From: Brian Havard Date: Sat, 23 Feb 2002 11:52:14 +0000 (+0000) Subject: When firing up a new child process, wipe clean the set of worker_score records X-Git-Tag: 2.0.33~152 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=700ef6886c2e6fcd972861c6f4b7540560799e8e;p=apache When firing up a new child process, wipe clean the set of worker_score records we're going to use as they could contain leftovers from a previous child. This solves a problem where a non-graceful restart followed by a graceful restart would leave previous generation children stuck waiting for non-existant worker threads to terminate. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93548 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/server/mpm/mpmt_os2/mpmt_os2_child.c b/server/mpm/mpmt_os2/mpmt_os2_child.c index 47e01564c0..60b747300c 100644 --- a/server/mpm/mpmt_os2/mpmt_os2_child.c +++ b/server/mpm/mpmt_os2/mpmt_os2_child.c @@ -196,6 +196,7 @@ void ap_mpm_child_main(apr_pool_t *pconf) } ap_my_generation = ap_scoreboard_image->parent[child_slot].generation; + memset(ap_scoreboard_image->servers[child_slot], 0, sizeof(worker_score) * HARD_THREAD_LIMIT); /* Set up an OS/2 queue for passing connections & termination requests * to worker threads