DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=12033>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=12033

Graceful restart immidiately result in [warn] long lost child came home!

[EMAIL PROTECTED] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Version|2.0.45                      |2.0-HEAD



------- Additional Comments From [EMAIL PROTECTED]  2003-12-13 21:30 -------
still present in 2.0-HEAD, 2.1-HEAD, etc.

MPMs handle other children differently for graceful restart vs. hard restart,
resulting in these confusing log messages.

ap_reclaim_child_processes() is called for apachectl stop and apachectl restart,
but not apachectl graceful.

apr_proc_other_child_refresh_all(APR_OC_REASON_RESTART) is called from
ap_reclaim_child_processes() but nowhere else.  That is the code that kills
the piped loggers from the server generation that is currently shutting down.
This cleaner way of cleaning them up isn't done for graceful restart.  For
graceful restart, the loggers get whacked by the plog pool going away.

There are a couple of ways to fix this.  One way is for the MPM to call
apr_proc_other_child_refresh_all() for both types of restarts.  I believe that
another way is to change piped log maintenance function to terminate the piped
logger when it gets the UNREGISTER call.  That is nice because whenever the pool
goes POOF the piped logger will terminate cleanly, irrespective of what the MPM
does (not tested :) ).  This assumes that during pool cleanup, the UNREGISTER
call will be made before the apr_proc_t-based process termination occurs.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to