[PATCH 00 of 10] RFC: Light-Weight Copy

Sune Foldager cryo at cyanite.org
Thu Sep 9 03:35:27 CDT 2010

On 09-09-2010 09:31, Dirkjan Ochtman wrote:
> On Wed, Sep 8, 2010 at 21:48, Sune Foldager<cryo at cyanite.org>  wrote:
>> Apart from the above, the patches are pretty much finished, as I see it. I would like to
>> make some minor changes, e.g. rename the 'lwcopy' metadata to 'copylw' to align with the
>> other two copy-related keys, maybe rename a few methods and similar.
> Do we have any benchmarks for this?

For the above paragraph or for the patch queue as a whole? And what 
benchmarks, speed, space..?

For very small files, the repository size actually increases by using 
lwcopy, but, coming to think of it, it would be easy to store such 
entries without lwcopy to avoid this slight regression; it mainly 
affects the test suite, I think.

As for performance in general, there are a few more indirections in the 
general revlog code path, and a bit more still for filelog, although for 
non-copy entries it amounts to about 2-3 indirect calls. For copy 
entries there is some repacking when receiving changegroups, and some 
partial repacking when adding local changesets. Among other things this 
can require twice the memory for file data storage. I believe there is 
room for slight improvement in this area.

Otherwise, I haven't done any speed or memory testing.


More information about the Mercurial-devel mailing list