I've got a piped logfile program I write to handle my logfiles, and
someone using it on Solaris said that when they try to restart apache,
it hangs on waiting for the piped program to terminate.  Last time I
checked Apache puts out a SIGHUP and then a SIGTERM to all child
processes.  The program calls exit() for a SIGTERM, and on Linux, seems
to exit and let Apache restart properly, however on Solaris, it seems
that it doesn't die properly and you have to send a SIGKILL to get it to
die and let Apache restart.

We were able to fix this problem by having the program call exit() when
it receives a SIGHUP too, but is this what Apache is expecting?  Should
it die on a SIGHUP?  If not, any idea why the child process would be
hanging on a Solaris system?

Eli.

Reply via email to