Conversation
|
On second thought, the calls to |
28837e3 to
0bf6c75
Compare
0bf6c75 to
1c11cd2
Compare
ikelos
left a comment
There was a problem hiding this comment.
Looks good, although, please could we add a couple comments to explain why we're casting in this specific instance when we normally go to great lengths to get people not to cast (so that they don't lose useful information or litter the code with unnecessary casts)...
ikelos
left a comment
There was a problem hiding this comment.
Out of interest, does the if root_inode_ptr in seen_inodes: still work, if the entries in seen_inodes are all ints? Just curious to know whether it does object comparison or runs the equality tests on them (and whether our equality test says they're the same). Either way I'm happy with this, but I'll hold off until we get the answer, just in case we can trim one of the casts...
Converts `objects.Pointer` to `int` before storing them in the set. This should have a substantial impact on memory, similar to those in #1758
`dentry.vol.offset` is already a basic Python `int`.
Adds a couple of comments explaining why we're doing a lossy conversion to Python `int` (saving memory).
Removes casts to `int` performed before checking set membership, since the computed `__hash__` value will be the same for both the Python primitive and the volatility `objects.Pointer`.
|
Looks like the call to |
bd5f843 to
a236c0d
Compare
|
Removed the unneeded casts in a236c0d |
Converts
objects.Pointertointbefore storing them in the set. Thisshould have a substantial impact on memory, similar to those in #1758