]> granicus.if.org Git - apache/commit
On graceless shutdown or restart, send AP_SIG_GRACEFUL to all worker
authorChris Darroch <chrisd@apache.org>
Fri, 26 May 2006 18:27:23 +0000 (18:27 +0000)
committerChris Darroch <chrisd@apache.org>
Fri, 26 May 2006 18:27:23 +0000 (18:27 +0000)
commitab486bc0883a8ff27622957fd3042b6d0b467896
treef267d04d4e00d5fa46472726e095e74ab3e184df
parent3c4c74840d9c67762e5d3b3fd73e702c540eb7ea
On graceless shutdown or restart, send AP_SIG_GRACEFUL to all worker
threads so that any that are polling on Keep-Alive connections will
wake up and exit promptly.  Otherwise, on Linux, they wait until
poll()'s timeout interval completes, which is often too long for
the parent process; the parent issues SIGKILL before the child's main
thread manages to re-join all the worker threads.  PR 38737.

On Solaris, by contrast, the close_worker_sockets() function
successfully alerts all worker threads that they should exit quickly.
On Linux, this side-effect of one thread closing another's socket
doesn't occur; see:

http://bugme.osdl.org/show_bug.cgi?id=546

Also, expand on the placeholder in CHANGES regarding previous
cleanups to scoreboard.c and scoreboard.h in r404848 and r404849.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@409715 13f79535-47bb-0310-9956-ffa450edef68
CHANGES
server/mpm/worker/worker.c