The image verification code you entered is incorrect.

Apache 2.2.3 did not restart right: Waiting for 0 worker threads to exit

|

I have one of my Apache 2.2.3 server scheduled to weekly restart with "D:\Apache3\bin\httpd.exe -k restart -n Apache3".
The last time it run (last night) it did not perform normally. Here is what the log looked like:

[Fri Sep 29 23:00:00 2006] [notice] Apache configured -- resuming normal operations
[Fri Sep 29 23:00:00 2006] [notice] Server built: Jul 27 2006 16:49:49
[Fri Sep 29 23:00:00 2006] [notice] Parent: Created child process 3236
[Fri Sep 29 23:00:01 2006] [notice] Child 3236: Child process is running
[Fri Sep 29 23:00:01 2006] [notice] Child 3236: Acquired the start mutex.
[Fri Sep 29 23:00:01 2006] [notice] Child 3236: Starting 256 worker threads.


I happen to have an another Apache 2.2.3 server on the same machine, also schedule to restart. Here is what that log looked like:

[Fri Sep 29 23:05:01 2006] [notice] Apache configured -- resuming normal operations
[Fri Sep 29 23:05:01 2006] [notice] Server built: Jul 27 2006 16:49:49
[Fri Sep 29 23:05:01 2006] [notice] Parent: Created child process 12844
[Fri Sep 29 23:05:01 2006] [notice] Child 12844: Child process is running
[Fri Sep 29 23:05:01 2006] [notice] Child 12844: Acquired the start mutex.
[Fri Sep 29 23:05:01 2006] [notice] Child 12844: Starting 256 worker threads.
[Fri Sep 29 23:05:02 2006] [notice] Child 12844: Starting thread to listen on port 80.
[Fri Sep 29 23:05:02 2006] [notice] Child 12844: Starting thread to listen on port 80.
[Fri Sep 29 23:05:02 2006] [notice] Child 12844: Starting thread to listen on port 80.
[Fri Sep 29 23:05:02 2006] [notice] Child 12844: Starting thread to listen on port 80.
[Fri Sep 29 23:05:02 2006] [notice] Child 12844: Starting thread to listen on port 80.
[Fri Sep 29 23:05:02 2006] [notice] Child 12844: Starting thread to listen on port 80.


As you can see the first Apache "forgot" to bind to the ips (ie listen to the ips) !
It's even more visible when I manually restarted the Windows Apache service, the first Apache log showed:

[Sat Sep 30 00:46:00 2006] [notice] Parent: Received shutdown signal -- Shutting down the server.
[Sat Sep 30 00:46:01 2006] [notice] Child 3236: Exit event signaled. Child process is ending.
[Sat Sep 30 00:46:02 2006] [notice] Child 3236: Released the start mutex
[Sat Sep 30 00:46:02 2006] [notice] Child 3236: Waiting for 0 worker threads to exit.
[Sat Sep 30 00:46:02 2006] [notice] Child 3236: All worker threads have exited.
[Sat Sep 30 00:46:02 2006] [notice] Child 3236: Child process is exiting
[Sat Sep 30 00:46:02 2006] [notice] Parent: Child process exited successfully.


Here are these 2 Apache servers software versions:
First Apache: Apache 2.2.3 + PHP 4.3.11 + Apache Lounge PHP connector + Eaccelerator 0.9.4
Second: Apache 2.2.3 (using mod_cache.so) + PHP 5.1.6 + Apache Lounge PHP connector

Here is what I changed on the first Apache Server configuration ( I will see next week if this happens again...):
Change load order of Apache modules to be similar to the Apache that restarted right.
MaxKeepAliveRequests 200 (was 300 when ThreadsPerChild 256 !!!)
KeepAliveTimeout 20 (was 25)

Idea to try if still happens (note to self):
Restart Windows Service directly from the schedule .bat file (net stop Apache3 ....net start Apache3)
Review the few php.ini change from last weeks optimizations



Reply

The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.
More information about formatting options Captcha Image: you will need to recognize the text in it.
Please type in the letters/numbers that are shown in the image above.