Vote for your source control system! Oct 22-26

Erik Wikström Erik-wikstrom at telia.com
Sat Oct 25 03:09:15 PDT 2008


On 2008-10-25 10:09, Michael Neumann wrote:
> Edward O'Callaghan schrieb:
>> Michael;
>> What are you talking about, I never had this problem ?
> 
> 
> # hg init
> # hg add big
> big: files over 10MB may cause memory and performance problems
> (use 'hg revert big' to unadd the file)

A quick search gives this:

"Mercurial has a couple limitations with file size. For performance
reasons, it assumes all files can fit comfortably in memory. As the
delta algorithm effectively requires multiple copies in memory, file
sizes are limited to about 1/4 available memory. Because 32-bit systems
typically have a 3GiB address-space limit, you're effectively limited to
750MiB on such systems."
  -- Matt Mackall

Another limitation in Mercurial is that it uses signed 32bit integers
for file-size so files larger than 2GB is not possible.

While I'm not familiar with the implementation of git I would not be
surprised if it had some similar limitations, fast operations usually
require the file to be in memory.

The (rather arbitrary) limit of 10MB for printing a warning is
apparently because virtual machines running hgweb often don't have more
than 64 MB RAM.

-- 
Erik Wikström





More information about the Kernel mailing list