Mercurial and very large files...

Marcin Kasperski Marcin.Kasperski at softax.com.pl
Tue Mar 27 09:38:42 UTC 2007


I tried loading 1GB file to the mercurial repo. Killed the 
process when my machine started to swap extensively.
Then noticed the following sentence in FAQ:

   Mercurial currently assumes that single files, indices, 
   and manifests can fit in memory for efficiency.

How deep is this restriction? Is it inherent for mercurial
implementation, or something likely to be changed in
the future?

Also: are there any suggestions, what is the max file
size mercurial can be expected to work efficiently with?
Of course this depends on the RAM size and CPU, but 
is the dependency linear, or worse?

[in case somebody is curious: I am trying to manage
 PGN files (chess games databases). Some of them
 are large.]

PS Interesting that Git seems to be almost equivalent 
to mercurial here. Experimenting, I just tried commiting 450MB 
file. hg allocated ~900MB while commiting (I killed this process
after some time). git-update-index allocated ~900MB while 
execting git add. 

Git does not seem significantly better. git-update-index 
just allocated 900MB while adding 600MB file...



More information about the Mercurial mailing list