[PATCH] Add script to rewrite manifest to workaround lack of parent deltas

Dirkjan Ochtman dirkjan at ochtman.nl
Tue Aug 25 19:32:03 UTC 2009


On Tue, Aug 25, 2009 at 20:45, Greg Ward<greg-hg at gerg.ca> wrote:
> How did you know which filelogs to shrink?  The biggest?

Yeah, I just looked what filelogs were the largest.

> I suppose I should try it on my big conversion, which I think is quite
> a bit larger than Python's history.

Right, its original manifest size was somewhere in the 800M size. BTW,
on Python's repository, some earlier version did better than Benoit's
latest.

> I propose this interface:
>
>  shrink-xxx               # shrink .hg/store/00manifest.{i,d}
>  shrink-xxx --revlog .hg/store/data/foo  # shrink specified revlog
> (.{i,d} is implicit)
>
> If that sounds good, should the script be called shrink-manifest (easy
> to find, covers 90% of usage) or shrink-revlog (more accurate)?

I prefer -revlog. Making it an extension that adds a command called
shrink (without args, manifest, with arg, filelog) might be even
better (although it should probably be in contrib, not hgext).

Cheers,

Dirkjan




More information about the Mercurial-devel mailing list