Bug #11676 Updated: A few apache children consume all memory and CPU.

From: Date: Tue, 26 Jun 2001 18:32:38 +0000
Subject: Bug #11676 Updated: A few apache children consume all memory and CPU.
Groups: php.dev 
Request: Send a blank email to php-dev+get-58077@lists.php.net to get a copy of this message
ID: 11676 Updated by: zeev Reported By: valerio@wnet.it Old-Status: Closed Status: Open Bug Type: Scripting Engine problem Operating system: PHP Version: 4.0 Latest CVS (2001-06-25) Assigned To: Comments: Ignore the last comment, wrong bug report :) Previous Comments: --------------------------------------------------------------------------- [2001-06-26 14:31:52] zeev@php.net Output buffering indeed cannot be used inside output handler functions. However, the code that handled that error situation contained a bug that caused PHP to enter an infinite loop. This bug is now fixed (although the limitation of not being able to use output buffering inside output handlers still applies) --------------------------------------------------------------------------- [2001-06-26 07:32:26] valerio@wnet.it Well, the problem is that we have many virtual hosts on that server, each using it's own log file... I can confirm that the gdb trace for ALL the many dead process, which are in running state, gives the three lines: #0 0x4012c23e in chunk_free () #1 0x4012bfaa in __cfree () #2 0x80fbcbf in shutdown_memory_manager () (it happened this morning too) Is there some way to know which script was executing just before the child died, please tell me! --------------------------------------------------------------------------- [2001-06-26 07:04:06] sniper@php.net It would help a lot to track this down if you could find out if this happens by running some script. --------------------------------------------------------------------------- [2001-06-25 17:40:15] valerio@wnet.it I'm using php 4.0.7-dev (downloaded from the CVS tree), Apache 1.3.20 on a P3 600 1 Gig RAM. After some hours that the server is running, in no particularly loaded confdition, CPU and memory utilization grows abnormally, making the server unusable. "top" shows that 4 o 5 httpd processes are eating 20% CPU each, and are all in "running" state. I managed to attach a gdb to one of these processes, and here's the result: Attaching to program `/usr/local/apache/bin/httpd', Pid 21784 Reading symbols from /lib/libpam.so.0...done. Reading symbols from /lib/libdl.so.2...done. Reading symbols from /lib/libcrypt.so.1...done. Reading symbols from /lib/libresolv.so.2...done. Reading symbols from /lib/libm.so.6...done. Reading symbols from /lib/libnsl.so.1...done. Reading symbols from /lib/libdb.so.3...done. Reading symbols from /lib/libc.so.6...done. Reading symbols from /lib/ld-linux.so.2...done. Reading symbols from /lib/libnss_compat.so.2...done. Reading symbols from /lib/libnss_files.so.2...done. 0x4012c23e in chunk_free () (gdb) bt #0 0x4012c23e in chunk_free () #1 0x4012bfaa in __cfree () #2 0x80fbcbf in shutdown_memory_manager () This is all I get. I saw MANY MANY bug reports with similarities to this one in the db. The only solution is stopping and restarting apache. In apache's error_log i get many lines with "child xxx still did not exit...sending a SIGTERM" and "child xxx still did not exit...sending a SIGKILL" as soon as i stop it. Let me know if I can make something to help you out more! --------------------------------------------------------------------------- ATTENTION! Do NOT reply to this email! To reply, use the web interface found at http://bugs.php.net/?id=11676&edit=2

« previous php.dev (#58077) next »