[PATCH 4 of 4] revlog: support writing generaldelta revlogs

Sune Foldager cryo at cyanite.org
Fri May 6 06:55:41 CDT 2011


On Fri, May 06, 2011 at 01:43:57 +0200, Benoit Boissinot wrote:

>Sune, this makes me think about something we might not have emphasized enough:
>having an unconsistent deltabase in a revlog (e.g. mixed parent and
>tip, or even random things when using generaldelta) makes it really
>hard to generate a bundle suitable for older clients.

Well not hard, just slow, right? You'll end up generating full revisions
a lot, and calculating their deltas. But that's of course not so good.

>This has been one of the big problem for parentdelta (which I hoped
>could solve by reordering the nodes when generating the bundle, but I
>need to test that more).
>I think there's more info on the parentdelta wiki page.

Yeah, reordering might help a lot. Either revlog.group or the bundler
could do some kinda deltaparent-aware toposort on the revs before the
actual bundling process. I think that could work.

-- 
Sune


More information about the Mercurial-devel mailing list