[Date Prev][Date Next]
Re: zombie processes in openldap-1.0.3 shell backend
I suspect this code is buggy. Besides the wait() issue, it has
a few other problems. First off, fork() in threaded environments
and doing anything other than exec() is a bad idea (including calling
close()). I recommend you compile with -DNO_THREADS. The code
should be rewritten to use a surrogate parent process to safely
fork the children in a multi-threaded environment.
I would welcome changes to back-shell to make it more robust.
Also, note, there has been some effort done in developing a
perl backend. You might ask on -devel about the current status
of that work.
At 10:06 AM 12/14/98 -0800, Alan Sparks wrote:
>Starting to see zombies cluttering up the proc table from OpenLDAP 1.0.3
>with a few Perl shell backend scripts.
>I can't find anything in the back-shell code that does a wait(), or catches
>SIGCHLD to reap the processes.
>Is this being handled? Somewhere that I'm not looking?
>Alan Sparks, IS Engineering Support
>Harris Communications, Camarillo CA (805) 389-2430