#43224 [Opn->Asn]: support real graceful reload of fastcgi
| From: | tony2001@php.net | Date: | Mon, 12 Nov 2007 09:47:49 +0000 |
| Subject: | #43224 [Opn->Asn]: support real graceful reload of fastcgi | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-119495@lists.php.net to get a copy of this message | ||
ID: 43224
Updated by: tony2001@php.net
Reported By: glen at delfi dot ee
-Status: Open
+Status: Assigned
-Bug Type: CGI related
+Bug Type: Feature/Change Request
Operating System: PLD Linux
PHP Version: 5.2.5RC2
-Assigned To:
+Assigned To: dmitry
Previous Comments:
------------------------------------------------------------------------
[2007-11-09 11:42:42] glen at delfi dot ee
Description:
------------
currently (checked 5.3 and 5.2) php-fcgi when receiving terminating
signal, finishes the request, ie does not terminate immedately.
however it does not close the socket it is listening for incoming
connections.
and there's no way to make the process really terminate in a nice
way. ie if you really want to terminate fcgi backend processes while
not caring whether the request is finished or not you can do this
only by sending SIGKILL, but it might be too brutal :)
for the first problem i've created patch for unix (linux) platform,
few testing shows that it really works.
for the second problem i'd suggest to use SIGINT for graceful
restart (close listening socket, end when php processing finishes)
and SIGTERM would just close listening socket and abort php
processing by making the child exit itself.
patch for 5.2.4 (also 5.2.5RC2):
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/php-fcgi-graceful.patch?only_with_tag=MAIN
patch for 5.3-snap:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/php-fcgi-graceful.patch?only_with_tag=DEVEL
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=43224&edit=1