worker_score in scoreboard.h needs a pid_t field.  The worker MPM (and
probably some other Unix threaded MPMs) has a perhaps-unexpected way
of handling child processes which are terminating gracefully -- it
allows new child processes to take over the process_score structure
and the worker_score structure for all threads except for the ones
handling long-running requests in the old child process.

Because there is not a pid_t field in worker_score, mod_status can't
display the id of the process handling that particular request, which
makes it difficult to determine which requests are being handled by
some httpd process which is trying to terminate.

So step 1 is add the pid_t field and bump MMN.
Step 2 is to teach worker MPM to maintain it properly.
Step 3 is to teach mod_status to check that field for non-zero (i.e.,
implemented by MPM) and , if set, use that instead of the
process_score field.

Any concerns?

Reply via email to