tests/test-issue1175
author Alexandre Fayolle <alexandre.fayolle@logilab.fr>
Thu, 23 Sep 2010 11:41:27 +0200
branchstable
changeset 12391 ca5fd84d62c6
parent 6875 0d714a48ab53
permissions -rwxr-xr-x
Fix memory leak when using hg commands over http repositories When using hg commands over an http repository in a long running process, a httphandler instance is leaked for each command, because of a loop handler.parent -> OpenerDirector and OpenerDirector.handlers -> handler which is not handled by Python's gc. Discussion on #mercurial concluded that removing the __del__ method solved the problem.

#!/bin/sh
rm -rf a
hg init a
cd a
touch a
hg ci -Am0
hg mv a a1
hg ci -m1
hg co 0
hg mv a a2
hg up
hg ci -m2

touch a
hg ci -Am3
hg mv a b
hg ci -Am4 a
hg ci --debug --traceback -Am5 b
hg verify
hg export --git tip