[PATCH 6 of 7] activate the light-weight copy feature

Sune Foldager cryo at cyanite.org
Wed Sep 15 06:30:22 CDT 2010

On 15-09-2010 01:01, Matt Mackall wrote:
> On Tue, 2010-09-14 at 11:56 +0200, Sune Foldager wrote:
>> # HG changeset patch
>> # User Sune Foldager<cryo at cyanite.org>
>> # Date 1282914720 -7200
>> # Node ID 6c95703db2ceff035bbcece54aa984da493e67f3
>> # Parent  c9ecf6d42dbaf1624833591c1c580ba93b0afa04
>> activate the light-weight copy feature
> This should probably be optional/undocumented until we've sorted out the
> related bundle format issues.

Ok, but with the stream-patch, there should be no issues, as 
changegroups are kept in the existing format and store data is 
unpacked/repacked as needed. Later on, with a new changegroup/bundle 
format, we can gain some performance by sending lwcopy entries directly. 
The same with parentdelta I reckon.

> Have you given any thought to what should happen when bar copies foo and
> we stream bar across before foo? I seem to remember there being an issue
> here.

Yes, in that case the target repo simply doesn't repack that entry into 
an lwcopy-entry; it stays a normal, old-style copy-entry. Nothing 
breaks. It seems like the simplest solution, as no changes are needed 
anywhere, really (just catching an exception at the right place in the 
repack code).


More information about the Mercurial-devel mailing list