generaldelta gains

Antoine Pitrou solipsis at pitrou.net
Mon May 9 10:46:46 CDT 2011


On Thu, 5 May 2011 20:53:21 +0200
Sune Foldager <cryo at cyanite.org> wrote:
> On Thu, May 05, 2011 at 08:42:19 +0200, Antoine Pitrou wrote:
> >On Thu, 5 May 2011 20:27:40 +0200
> >Benoit Boissinot <bboissin at gmail.com> wrote:
> >> >
> >> > Out of curiousity: why only the first parent and not both of them?
> >> > It seems to make storage efficiency depend on tiny details of people's
> >> > workflow ("which way" they do their merges), doesn't it?
> >>
> >> The storage supports it, but last time I checked it was quite
> >> expensive to try all combinations.
> >
> >Well, trying 3 revisions instead of 2 is only a 50% increase, isn't
> >it? :)
> >
> >The reason why I'm interested is that I think it would benefit CPython
> >a lot. Yesterday I experimented with parentdelta, and it would shrink
> >our current repo from 260MB to 180MB (although the original conversion
> >result, two months ago, had *already* been reordered using the
> >"shrink-revlog" script).
> >
> >The logical reason is that most of our changes (bug fixes) are actually
> >done in several branches in lockstep (fix bug in 3.1, merge into 3.2,
> >merge into default), so using N-1 as a base for revision N is
> >suboptimal.
> 
> Well, we could easily make this configurable in some way, so you could
> either enable p2 or maybe something even more general... the sky will
> be the limit :p.

Ok, I've now tested generaldelta and it shrinks the CPython repo from
270MB to 197MB.
Why is it disabled by default?

Regards

Antoine.


More information about the Mercurial-devel mailing list