You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by bj...@apache.org on 2002/02/23 12:52:14 UTC

cvs commit: httpd-2.0/server/mpm/mpmt_os2 mpmt_os2_child.c

bjh         02/02/23 03:52:14

  Modified:    server/mpm/mpmt_os2 mpmt_os2_child.c
  Log:
  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.
  
  Revision  Changes    Path
  1.16      +1 -0      httpd-2.0/server/mpm/mpmt_os2/mpmt_os2_child.c
  
  Index: mpmt_os2_child.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/server/mpm/mpmt_os2/mpmt_os2_child.c,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- mpmt_os2_child.c	1 Feb 2002 22:16:31 -0000	1.15
  +++ mpmt_os2_child.c	23 Feb 2002 11:52:14 -0000	1.16
  @@ -196,6 +196,7 @@
       }
   
       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