Merging changes for Bazaar beyond the default python
Vincent Ladeuil
v.ladeuil+lp at free.fr
Thu Nov 19 02:54:00 GMT 2009
>>>>> "martin" == Martin (gzlist) <gzlist at googlemail.com> writes:
<snip/>
martin> <http://float.endofinternet.org/temp/bazaar_j_noncpython_bt.test_transform#bt.test_transform.TestTransformRollback>
martin> To nearly ten seconds when lots of other tests are run first:
martin> <http://float.endofinternet.org/temp/bazaar_j_noncpython_bt.test_#bt.test_transform.TestTransformRollback>
martin> Click on some of the other coloured boxes for more info. I have a
martin> vague feeling this may be to do with http server thread leaking, but
martin> that's just guessing.
I'm working on the http server leaks and it's quite ugly[1]. The short
story is if it works, good, if it don't, avoid the tests, plain and
simple. I have a work in progress that fixes several bugs already but
more are needed, so at the very least check with me first (I'm offline
and away from home so I can't check precisely what is available but
I'll be happy to share as soon as I get home or online whatever came
first :)
Vincent
[1]: The middle-sized story is that we use the python SocketServer that
is not intended to be used with a client connecting from the same
*process*. As long as the client is in a different process, everything
is fine, but even when we use it from the same process, things can go
well, the bug has been here for years and quite quiet... My best guess
about the slowdown is that python use some sort of select on all open
sockets and if they are not garbage collected... bad things happen. The
fixes I'm working on are about closing these sockets in due time instead
of relying on gc, but that implies adding synchronizations in various
places and lately propagating exceptions from threads to their
parent. Kind of whack-a-mole between hangs, exceptions on either side of
the socket (depending on the moon phase) and so on. The good news is
that I'm able to run the full test suite without any leaking
test... sometimes :)
More information about the bazaar
mailing list