Pull over ssh leaves hordes of zombies

Create issue
Issue #64 wontfix
Former user created an issue

When cloning/pulling over svn+ssh, it appears each ssh process invoked is left as a zombie. Eventually, my OS won't let me start any more processes, at which point hg bombs out and the zombie horde is slain.

I'm running on MacOS 10.5, using the latest macports versions of hg, svn, and the svn python bindings.

Comments (3)

  1. Augie Fackler repo owner

    There's already hacks in the code with the intent of circumventing this problem - it's always been enough for me. Are you doing something unusual that keeps a lot of open files?

    Note that I don't think these are truly zombies. A zombie typically wont ever exit (and would show with a status of Z in Finder), whereas these are children being held open for reasons I don't understand. It's possible that registering a handler for SIGCHLD would be enough to fix this issue permanently, but I have no way to test.

  2. David Watson

    They show up as "Z+" in ps output. I'll get a couple hundred of them, and then it will die and I'll have to restart it (I resorted to "while ! hg svn pull; do echo zombiedeath; done" in order to have it run unattended).

    I'm not doing anything *too* unusual, as far as I know. This has happened on two different machines (both Macs running 10.5.6) with two different repositories (one with 17000 revisions, another with just a few hundred).

  3. Augie Fackler repo owner

    Further research indicates this is a bug in svn > 1.5.6. See this thread for more details: http://subversion.tigris.org/ds/viewMessage.do?dsMessageId=1445592&dsForumId=462

    There's a workaround mentioned here: http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1452200

    It's possible a future upstream version of svn will fix this, or that some future architectural change in hgsubversion would fix this as well, but I'm not planning on fixing this since it's an upstream issue.

  4. Log in to comment