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

Peter Arrenbrecht peter.arrenbrecht at gmail.com
Fri May 6 07:19:12 CDT 2011


On May 6, 2011 2:11 PM, "Benoit Boissinot" <bboissin at gmail.com> wrote:
>
>
> On May 6, 2011 2:04 PM, "Sune Foldager" <cryo at cyanite.org> wrote:
> >
> > On Fri, May 06, 2011 at 01:55:41 +0200, Sune Foldager wrote:
> >>
> >> 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.
> >
> >
> > Do we already have some topo sort code we can use? Then we could
experiment
> > with putting it into group/the bundler, and see how it fares on some
heavily
> > generaldeltaed test repos. I guess the shrinker must use something?
>
> I have some code on my laptop which depends on the dagutil module from
Peter.

Which is in main now.

> >
> > Sune
>
>
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at selenic.com
> http://selenic.com/mailman/listinfo/mercurial-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20110506/4d645d0e/attachment.htm>


More information about the Mercurial-devel mailing list