Login | Register
My pages Projects Community openCollabNet

Discussions > users [DISABLED] > [PATCH] (updated) fix for ssh zombies introduced with r35533

subversion
Discussion topic

There will be a brief maintenance window every Friday at 17:00 Pacific.
For further details, see CollabNet's maintenance and upgrade policy.

Back to topic list

[PATCH] (updated) fix for ssh zombies introduced with r35533

Author mackyle
Full name Kyle McKay
Date 2009-04-21 15:47:44 PDT
Message [[[
Fix ssh zombie problem introduced with revision 35533

* subversion/libsvn_ra​_svn/client.c
  (make_tunnel): Fully detach tunnel process to avoid having it
                 receive signals while restoring the original
                 apr_pool_note_subprocess to avoid creating zombies.
]]]

Updated so that WIN32 behavior remains the same after applying this
patch as it was after revision 35533. The earlier version of the
patch inadvertently reverted WIN32 behavior to the pre-r35533 state.

Kyle

> As detailed in this thread:
>
> http://subversion.ti​gris.org/ds/viewMess​age.do?dsForumId=462​&dsMessageId=144​5592
>
> regarding the change introduced into client.c by revision 35533:
>
> http://svn.collab.ne​t/viewvc/svn?view=re​vision&revision=​35533
>
> On Mar 27, 2009, at 09:51, Hyrum K. Wright wrote:
>> The case which drove r35533 was a user who uses ssh connection
>> pooling for svn connections.
>
> Change r35533 removed the call to to apr_pool_note_subprocess
> meaning that Subversion never reaps any of its children. This may
> be okay for a short-lived process, but is not okay for a long-lived
> process such as a GUI tool that has linked with the Subversion
> library.
>
> If the GUI tool runs long enough, it can create so many un-reaped
> zombie processes that system resources are exhausted and it becomes
> impossible to spawn any new processes.
>
> The attached patch restores the original call to
> apr_pool_note_subprocess thus guaranteeing no zombies are ever
> created. It also arranges for the tunnel process to become detached
> so that it can "die in piece, in its own time, on its own terms" as
> the log comment for revision 35533 mentions, but without causing
> zombie processes to be created.
>
> This change retains full compatibility with ssh connection pooling
> while eliminating the zombie problem. See issue #2580 for the
> original impetus for the change made in revision 35533.
>
> http://subversion.ti​gris.org/issues/show​_bug.cgi?id=2580
>
> Kyle
Attachments

« Previous message in topic | 1 of 1 | Next message in topic »

Messages

Show all messages in topic

[PATCH] (updated) fix for ssh zombies introduced with r35533 mackyle Kyle McKay 2009-04-21 15:47:44 PDT
Messages per page: