Hang at commit time when using sftp or bzr+ssh

John Arbash Meinel john at arbash-meinel.com
Wed Dec 7 20:25:26 UTC 2011


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 12/7/2011 8:43 PM, Martin Pool wrote:
> On 8 December 2011 06:29, Stephen Auyeung <stephen at ck12.org>
> wrote:
>> Martin,
>> 
>> I did not explicitly open new ssh transports. Was it done inside
>> commit? If so, why wasn't the disconnect called?
> 
> OK, I think there is a bug where transports that are automatically 
> opened from a url during an operation like this will not be closed 
> automatically.  It will only be a concrete problem in cases like
> yours where you have a long lived process opening multiple trees
> bound to remote locations, but it is worth fixing.  We could add a
> __del__ method, or have some kind of scope that tells it when to
> disconnect. Perhaps when the branch is opened, the tree that opens
> it should add a cleanup on itself to close it again.
> 
> In the past del methods have been deprecated because they tend to 
> inhibit python gc and to make the time of disconnection
> unpredictable.
> 
> Would you like to try fixing this?
> 

I think Branch participates in self references so adding __del__ will
probably just make it immortal. You might be able to do something with
Transport, though. Or the old extra-object-that-has-__del__ tricks.

John
=:->

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk7fy7UACgkQJdeBCYSNAAMstQCgpqVK7VqxcOqzu+5s0e57aXl9
o0EAn1Qepi2qjzamGEOYcNL/tLPw0PDK
=I6R0
-----END PGP SIGNATURE-----



More information about the bazaar mailing list