6.3-STABLE Apache 2.0 uses high CPU when restarted....

Forrest Aldrich forrie at forrie.com
Thu Feb 21 17:57:58 UTC 2008



Derek Ragona wrote:
> At 08:34 AM 2/21/2008, Forrest Aldrich wrote:
>> I recently recomplied the apache20 port (updated) with no 
>> compile-time changes.  Since that time, I noticed it was hogging 98% 
>> of the CPU and hanging.  I adjusted the various Max/Min server levels 
>> and that seemed to fix it - except at midnight when the logs are 
>> rotated and the server is sent a HUP signal.  When that happens, all 
>> the processes die except one and it hangs at 90% CPU.  I kill it off, 
>> restart it manually and it behaves fine.
>>
>> Here's a recent output of "top" :
>>
>> PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
>> 94711 www         1 117    0 41036K 13852K RUN    0   1:43 98.69% httpd
>>
>> The only thing that has changed on the system is an upgrade from 
>> MySQL-4.1 to MySQL-5.1, which I wouldn't expect httpd to be affected 
>> by, but I could be wrong.  To be sure, I recompiled it, PHP and any 
>> dependencies that PHP has, but I'm still seeing the same result.
>>
>> I tried compiling MySQL-5.1 with and without pthreads and see the 
>> same CPU consumption issue.
>>
>> I wonder if I've hit a bug or if I've possibly messed something up 
>> (as careful as I've been anyway).
>>
>>
>>
>> Thanks,
>>
>> Forrest
>
> What is showing in the apache logs when this happens?
>
>         -Derek

The only thing I see are multiple lines of these errors in error_log:

[Thu Feb 21 00:00:12 2008] [error] child process 63633 still did not 
exit, sending a SIGKILL
[Thu Feb 21 00:00:12 2008] [error] child process 63634 still did not 
exit, sending a SIGKILL
[Thu Feb 21 00:00:12 2008] [error] child process 63635 still did not 
exit, sending a SIGKILL
[Thu Feb 21 00:00:12 2008] [error] child process 63636 still did not 
exit, sending a SIGKILL
[Thu Feb 21 00:00:12 2008] [error] child process 63637 still did not 
exit, sending a SIGKILL
[Thu Feb 21 00:00:12 2008] [error] child process 63983 still did not 
exit, sending a SIGKILL
[Thu Feb 21 00:00:12 2008] [error] child process 64048 still did not 
exit, sending a SIGKILL


Which is correct, as the process is not exiting.  For some reason it's 
hanging.  The old binary did not do this.

I could try another system update today (make/build/install world and 
recompile the apache executable and dependencies) to see if this solves 
the problem...


Thanks,

Forrest




More information about the freebsd-questions mailing list