Edit report at http://bugs.php.net/bug.php?id=40286&edit=1

 ID:                 40286
 Comment by:         jason at backup-technology dot co dot uk
 Reported by:        gabriel at oxeva dot fr
 Summary:            PHP fastcgi with PHP_FCGI_CHILDREN don't kill
                     children when parent is killed
 Status:             No Feedback
 Type:               Bug
 Package:            CGI related
 Operating System:   Linux 2.6
 PHP Version:        5.2.0+
 Assigned To:        dmitry
 Block user comment: N

 New Comment:

We're experiencing this issue with 5.2.14 and also 5.3.3.



On 5.2.14 the strace of the hanging processes with parent ID 1 left
behind show this:



Process 21330 attached - interrupt to quit

accept(0,  



It hangs on that and if we interrupt it shows:



Process 21330 attached - interrupt to quit

accept(0,  <unfinished ...>



Running a gdb (with debug symbols) and attaching to the process and
running "bt" we get:



(gdb) bt

#0  0x000000320c8d4530 in __accept_nocancel () from /lib64/libc.so.6

#1  0x000000000062abe8 in fcgi_accept_request (req=0x7fff3cb385b0) at
/usr/src/debug/php-5.2.14/sapi/cgi/fastcgi.c:957

#2  0x000000000062c14f in main (argc=1, argv=0x7fff3cb3a758) at
/usr/src/debug/php-5.2.14/sapi/cgi/cgi_main.c:1703



On the 5.3.3 (with no debug symbols) we have the following:



(gdb) bt

#0  0x00000038936d4530 in __accept_nocancel () from /lib64/libc.so.6

#1  0x000000000063e0c3 in ?? ()

#2  0x000000000063ad2a in ?? ()

#3  0x000000389361d994 in __libc_start_main () from /lib64/libc.so.6

#4  0x0000000000421ec9 in _start ()



Hope this helps.



Jason.


Previous Comments:
------------------------------------------------------------------------
[2009-07-26 21:55:21] machochito at gmail dot com

I have the same problem on CentOS 5.3 with php 5.2.9.

Have someone solution to this problem?

Thanks.

------------------------------------------------------------------------
[2009-07-22 20:45:21] bgross at mcw dot edu

... on second thought, after looking at my php.ini again, I think the 

major change was due to adding the line "session.gc_probability = 1". I


believe this is set to "session.gc_probability = 0" by default in Debian

------------------------------------------------------------------------
[2009-07-22 20:14:41] bgross at mcw dot edu

I'm not familiar with the inner-workings PHP, so I'm sorry if this is 

not relevant.



I was experiencing a problem with php-cgi processes staying around and 

filling up my memory. After I added the line "cgi.fix_pathinfo=1" to my


php.ini, the problem went away.



I'm using PHP FastCGI 5.2.6 with Lighttpd 1.4.19 on Debian 5.0.2



Hope that's helpful

------------------------------------------------------------------------
[2009-07-02 03:41:27] porjo38 at yahoo dot com dot au

The php 5.3.0 changelog states the following:



"Fixed bug #40286 (PHP fastcgi with PHP_FCGI_CHILDREN don't kill
children when parent is killed). (Dmitry)"



I've just compiled php 5.3.0 under Centos5.3 with Apache2.2.3 +
mod_fcgid2.2-4.



The issue is still occuring for me. When I restart Apache, I usually end
up with a bunch of php-cgi process with ppid of 1 (init), although it
doesn't happen every time.

------------------------------------------------------------------------
[2009-05-16 03:43:15] scripts at topducks dot com

I'm using php5.2.9 mod_fcgid, not using children method.

Whenever I restart apache I get orphaned php processes.

Without the cron job to check and kill them off they would waste a lot
of memory.

------------------------------------------------------------------------


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    http://bugs.php.net/bug.php?id=40286


-- 
Edit this bug report at http://bugs.php.net/bug.php?id=40286&edit=1

Reply via email to