Req #43224 [Fbk->NoF]: support real graceful reload of fastcgi
| From: | php-bugs at lists dot php dot net | Date: | Mon, 18 Feb 2013 00:33:54 +0000 |
| Subject: | Req #43224 [Fbk->NoF]: support real graceful reload of fastcgi | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-176717@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=43224&edit=1
ID: 43224
Updated by: php-bugs@lists.php.net
Reported by: glen at delfi dot ee
Summary: support real graceful reload of fastcgi
-Status: Feedback
+Status: No Feedback
Type: Feature/Change Request
Package: CGI/CLI related
Operating System: PLD Linux
PHP Version: 5.2.5RC2
Assigned To: dmitry
New Comment:
No feedback was provided. The bug is being suspended because
we assume that you are no longer experiencing the problem.
If this is not the case and you are able to provide the
information that was requested earlier, please do so and
change the status of the bug back to "Open". Thank you.
Previous Comments:
------------------------------------------------------------------------
[2011-04-08 15:48:09] dmitry@php.net
the listening socket is already set into SO_REUSEADDR mode, so it's not a problem to start new
PHP FastCGI process(es) while another is not finished yet.
------------------------------------------------------------------------
[2008-11-16 16:09:20] glen at delfi dot ee
ping?
for now the patch only makes php-fcgi to close listening socket on
SIGTERM, so if it continues to run, new processes are able to spawn
to the same tcp port.
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/php-fcgi-graceful.patch?rev=1.8
------------------------------------------------------------------------
[2008-07-29 09:22:33] glen at delfi dot ee
Didn't know about SIGQUIT, but ok, you can keep the signal handlers,
but closing listening sockets on SIGTERM does not break process
managers, it will do only good.
as for original behaviour, if you have some long running request
running and you terminate fcgi processes with SIGTERM you can not
start new fcgi processes on same tcp port (as the socket is still in
use)
so to summarize signal handlers would be:
SIGTERM, SIGUSR1 - graceful shutdown -- listening sockets are
closed, processing continues until scripts finish
SIGINT, SIGQUIT (, SIGKILL) - immediate shutdown -- listening
sockets are closed, processes are terminated unconditionally whether
they are idle or not.
------------------------------------------------------------------------
[2008-07-29 09:00:33] dmitry@php.net
FastCGI PHP SAPI supports only gracefull restart initiated by SIGTERM and SIGUSR1, however you still
able to terminate worker processes with sending SIGINT/SIGQUIT to process group.
I'm not going to change it as it may break behavior with some FastCGI managers.
------------------------------------------------------------------------
[2008-06-11 11:18:40] glen at delfi dot ee
hi
any progress with the patch?
i can confirm that it works without problems since i initially
created the patch.
------------------------------------------------------------------------
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
https://bugs.php.net/bug.php?id=43224
--
Edit this bug report at https://bugs.php.net/bug.php?id=43224&edit=1