Mercurial problem with large binary changesets
Francois-Denis Gonthier
fdgonthier at kryptiva.com
Wed May 30 12:01:01 UTC 2007
----- KRYPTIVA PACKAGED MESSAGE -----
PACKAGING TYPE: SIGNED
> It's possible that if your template contains a huge number of LF
> characters, memory usage could be especially ugly. The delta
> algorithm is "line-based", even for "binary" files. Can you count
> them?
wc -l reports 173312 lines.
> Alternately, you can hack mercurial/bdiff.c to report how big its
> various mallocs are. Line 78 is the most likely culprit.
Allocations in bdiff.c:78 does not correlate well with the behavior I
observe. There are a few medium-sized allocation there:
2007-05-30 11:41:58.195043 - bdiff: 107560
2007-05-30 11:42:00.009550 - bdiff: 141280
2007-05-30 11:42:02.212016 - bdiff: 3026560
I can't interpret if this is excessive or not.
I see the problem might be related to decompression. From the stack trace:
File "/var/lib/python-support/python2.4/mercurial/revlog.py", line 66,
in decompress
if t == 'x': return zlib.decompress(bin)
Is there a way to debug that?
----- KRYPTIVA SIGNED MESSAGE -----
This email claims to have been packaged by Kryptiva.
To process this email and authenticate its origin, get
the free plugin from:
http://www.kryptiva.com/downloads
----- KRYPTIVA SIGNATURE START -----
AvWVqAAAAAIAAAABAAAAAAAATiACAQAAAAC3AQAIAAAAAwAAAAECABS3FuvxegTt63v7UWCF
iSdtKgVqvAMAFNtYnPf/czq1EyEfvnKRBT4kXaMpBAAUPeBFYOVSOO06L2Fx5nv/SqsjQBQF
ABTaOaPuXmtLDTJVv++VYBiQr9gHCQYAFNcZh+doKHiXksUamShm9lxTMLNaBwAUcxAfshzW
betQOUw1fQ1DzvIPMroRABgAAAAAAABOIEZdZ3wADapvAAAAAAAAEJ0TAAQAAAAAAAAAggP/
Rpo8phGxn8PazLuEp9hsMRbhaD+FIeSSOTKhSBcqGD8xucYwbum/Gj3zH+cKeLBTzpKNUpGd
0XNd8+oKGt7VOXxqaE1dh+FbikaPZDlg+3hZ98YaKT6h1d6Q7auhpYC924DuhNb4kb/hvVwp
EgfpzvUSxMw18QjanmtPHwM7pSs=
----- KRYPTIVA SIGNATURE END -----
More information about the Mercurial
mailing list