You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by "GUMMALAM,MOHAN (HP-Cupertino,ex2)" <mo...@hp.com> on 2001/07/11 01:58:07 UTC

Problems, 2.0.20, and HP-UX

Hi Apache2.0 devs: On HP-UX, we are facing a problem whose symptoms are
similar to the one seen with 2.0.19 release.  Upon starting Apache, the
number of processes running reduces to 2.  Upon further investigation, it
looked like the main process (watchdog process) went on a rampage and killed
all the child processes in the following piece of code:

static void perform_idle_server_maintenance(void)
{
    .
    .
    if (idle_thread_count > max_spare_threads) {
        /* Kill of one child */
    .
    .
}

By using tusc, we found that after the child processes were created, there
were a bunch of requests sent to kill the processes:

write(13, "! ", 1) ....................................... = 1

And although a lot of waitpid's were called earlier (each returning -1), the
following bunch of waitpid's succeeded after a while, all occuring together.

waitpid(-1, WIFEXITED(0), WNOHANG|WUNTRACED) ............. = 2122
waitpid(-1, WIFEXITED(0), WNOHANG|WUNTRACED) ............. = 2121
waitpid(-1, WIFEXITED(0), WNOHANG|WUNTRACED) ............. = 2120
waitpid(-1, WIFEXITED(0), WNOHANG|WUNTRACED) ............. = 2119
waitpid(-1, WIFEXITED(0), WNOHANG|WUNTRACED) ............. = 2118
waitpid(-1, WIFEXITED(0), WNOHANG|WUNTRACED) ............. = 2117

At the end of it, there are only two processes running.  I tried this out
with different StartServers values, (4, 5 and 6).  Each time I ended up with
the same final state (of two processes).  The above output is in the case of
StartServers=6.

I'm surprised that no one else has run into this, when it consistently shows
up on HP-UX.

We'll be investigating this further here, and will get back to you.  If
anyone else has run into this problem, do let me know.

Thanks,
M