SmartSSHClientMedium.__del__ blocks forever, because of socket leaked into unrelated child process

Bug #696285 reported by Max Bowsher
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Bazaar
Fix Released
Low
Max Bowsher

Bug Description

When executing 'bzr multi-pull' over a tree containing branches that pull from a mix of bzr+ssh:// and bzr-svn svn+ssh:// URLs, the bzr process hangs after completing all pulls.

Control-C-ing it prints:

Exception KeyboardInterrupt: KeyboardInterrupt() in <bound method SmartSSHClientMedium.__del__ of SmartSSHClientMedium(bzr+ssh://None@b/)> ignored

(in which "b" is the name of the host being pulled from over bzr+ssh)

Using bzr.dev tip, bzr-svn 1.0 tip.

Related branches

Revision history for this message
Max Bowsher (maxb) wrote :

The behaviour is ordering dependent, occurring only if a svn+ssh branch is pulled after a bzr+ssh one.

The hang is the result of a "ssh ... bzr serve ..." process not exiting even after its stdin/out socket is closed. This is happening because the socket for the bzr+ssh child has been leaked into the svn+ssh child, and is still open there.

summary: - SmartSSHClientMedium.__del__ blocks forever
+ SmartSSHClientMedium.__del__ blocks forever, because of socket leaked
+ into unrelated child process
Max Bowsher (maxb)
Changed in bzr:
assignee: nobody → Max Bowsher (maxb)
importance: Undecided → Low
status: New → In Progress
Revision history for this message
Robert Collins (lifeless) wrote : Re: [Bug 696285] Re: SmartSSHClientMedium.__del__ blocks forever

Great catch ! this is likely the reported bug about bzr+ssh hanging on
natty too.

Vincent Ladeuil (vila)
Changed in bzr:
milestone: none → 2.3b5
Vincent Ladeuil (vila)
Changed in bzr:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.