#886: Shutdown failures
---------------------------------------+------------------------------------
Reporter:
malcolm...@gmail.com | Owner: fumanchu
Type: defect | Status: new
Priority: normal | Milestone:
Component: CherryPy code | Keywords:
---------------------------------------+------------------------------------
There are some cases in which cherrypy shutdown behaviour is suboptimal.
- If unexpected exceptions occur during shutdown, the system never stops.
This occurs regularly if, for example, cherrypy is run with its output
piped into rotatelogs; during shutdown, rotatelogs is gone, and attempts
to log cause exceptions. Should this occur, the server sits there
indefinitely, ignoring further KeyboardInterrupts and SIGTERMs, responding
to every request with broken pipe errors, and needs nastiness (SIGKILL,
SIGSEGV etc.) to make it stop.
- Once the server receives a KeyboardInterrupt or SIGTERM, it seems
determined to respond to every request already in a queue; if the
application is both busy and slow, this can introduce an arbitrary
shutdown delay during which, again, further KeyboardInterrupts or SIGTERMs
are ignored, and only waiting it out or being nasty will stop it.
--
Ticket URL: <
http://www.cherrypy.org/ticket/886>
CherryPy <
http://www.cherrypy.org>
CherryPy - a pythonic, object-oriented HTTP framework