remotefilelog: Large Manifest

Pierre-Yves David pierre-yves.david at ens-lyon.org
Sun Mar 1 19:51:11 UTC 2020



On 3/1/20 12:26 PM, Pulkit Goyal wrote:
> Hi,
> 
> On Tue, Feb 25, 2020 at 5:09 PM Son Luong Ngoc via Mercurial
> <mercurial at mercurial-scm.org> wrote:
>>
>> Just to add some more info:
>> The repo was convert from git -> hg using hg-git latest version(Cloned from Heptapod) and HG 5.2.2 (or 5.2.1)
>>
>> The following is the debug info:
>>> hg debugformat
>> format-variant    repo
>> fncache:           yes
>> dotencode:         yes
>> generaldelta:      yes
>> sparserevlog:      yes
>> sidedata:           no
>> copies-sdc:         no
>> plain-cl-delta:    yes
>> compression:       zlib
> 
> You should definitely try out the zstd compression. It won't make a
> large difference but it will make things better.

+1 using zstd don't have a huge impact on size, but speed up read/write 
up to about 50%

You can see some number here 
https://www.mercurial-scm.org/repo/hg/rev/bb271ec2fbfb

>> compression-level: default
>>
>> My current hypothesis is that because this repo was converted from git with hg-git:
>> - too many HEADs/Branches
>> - a non-linear history because of "merge commit"
>>
>> I would appreciate if somebody could give me a hint on how to deal with this case :(

Can you share some information to help with diagnostic ?
- How many changeset do you have ?
- How many files do you have in your working copy ?
- How many different file did you had in the repository ever ? `hg 
manifest --all | wc -l`
- How many merge do you have.

You can also trying basic maintenance thing like `hg debugupgraderepo -o 
re-delta-all --run` and making a local pulling clone `hg clone --pull 
local local2`

I don't have much time today. I'll try to look into your other question 
later.

-- 
Pierre-Yves David



More information about the Mercurial mailing list