php-5.1.4 fcgi not killed on restart/reload

ts77

Well-Known Member
#1
Hi there,

I don't know if its related to php-5.1.4 only which has a changed fast-cgi implementation or to lsws.
But since upgrading to php-5.1.4 there is at least one php5-process left on gracefull reload/restart running at 100% cpu-load.
Same happens if I completely shut down lsws ... I need to manually kill those php-processes with kill -9 ... .

Any options beside not running php-5.1.4? ;)


Thanks,

thomas
 

xing

LiteSpeed Staff
#2
Thomas, I would like to reproduce this problem on my end. Can you email the following to xing [at] litespeedtech.com:

1) Your php configuration line (top output from phpinfo()) ../configure ...

2) /lswsinstall/conf/httpd_config.xml (if you have the fcgi external app defined there). If you have the external app defined in the vhost, send me the vhost xml file as well.

Your problem with php 5.1.4 fcgi should fairly easy to reproduce.

PHP 5.1.3 introduced the new fcgi codebase and 5.1.4 contained a few critical fcgi fixes so I'm certain the new fcgi code in PHP is still yet, not "well tested".
 

mistwang

LiteSpeed Staff
#3
Thomas,

I think it is a bug in PHP's fcgi module. Maybe it was a infinity loop in signal handling routine fastcgi_cleanup() when "PHP_FCGI_CHILDREN" was set.

Have you tried "strace" on the hanging PHP process?
 

ts77

Well-Known Member
#4
Thanks guys.

mistwang: I've done a strace when it happened the first time. it were only the same "read"-commands over and over again showing there.

xing: you still need that data to reproduce this? Or are we going to wait for a fixed fcgi in php-5.1.5? ;)
 

xing

LiteSpeed Staff
#5
Thomas, send me the info anyways. We can save quite a bit of time by setting up an absolute fail environment on a live machine with traffic so that we not only confirm the problem, isolate the fix, but ensure the fix does not have any regressions with traffic volume test.

Of course, that is assuming it's not a PHP fcgi problem. =)
 

ts77

Well-Known Member
#7
I think its a php-cgi problem ...
the strace looks like the following:

Code:
read(5, "", 8)                          = 0
read(5, "", 8)                          = 0
read(5, "", 8)                          = 0
read(5, "", 8)                          = 0
read(5, "", 8)                          = 0
read(5, "", 8)                          = 0
read(5, "", 8)                          = 0
...

I've sent you my info about the php-install anyway.
 
Top