You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by tr...@apache.org on 2012/07/19 02:05:29 UTC
svn commit: r1363183 - in /httpd/httpd/trunk: CHANGES
server/mpm/prefork/prefork.c
Author: trawick
Date: Thu Jul 19 00:05:29 2012
New Revision: 1363183
URL: http://svn.apache.org/viewvc?rev=1363183&view=rev
Log:
fix child exit status in prefork after certain errors in
the child so that the parent resets the spawn rate to the
minimum
or:
mpm_prefork: Reduce spawn rate after a child process exits due to
unexpected poll or accept failure.
Modified:
httpd/httpd/trunk/CHANGES
httpd/httpd/trunk/server/mpm/prefork/prefork.c
Modified: httpd/httpd/trunk/CHANGES
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/CHANGES?rev=1363183&r1=1363182&r2=1363183&view=diff
==============================================================================
--- httpd/httpd/trunk/CHANGES [utf-8] (original)
+++ httpd/httpd/trunk/CHANGES [utf-8] Thu Jul 19 00:05:29 2012
@@ -1,6 +1,9 @@
-*- coding: utf-8 -*-
Changes with Apache 2.5.0
+ *) mpm_prefork: Reduce spawn rate after a child process exits due to
+ unexpected poll or accept failure. [Jeff Trawick]
+
*) core: Log value of Status header line in script responses rather
than the fixed header name. [Chris Darroch]
Modified: httpd/httpd/trunk/server/mpm/prefork/prefork.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/server/mpm/prefork/prefork.c?rev=1363183&r1=1363182&r2=1363183&view=diff
==============================================================================
--- httpd/httpd/trunk/server/mpm/prefork/prefork.c (original)
+++ httpd/httpd/trunk/server/mpm/prefork/prefork.c Thu Jul 19 00:05:29 2012
@@ -641,7 +641,7 @@ static void child_main(int child_num_arg
ap_log_error(APLOG_MARK, APLOG_ERR, status,
ap_server_conf, APLOGNO(00158) "apr_pollset_poll: (listen)");
SAFE_ACCEPT(accept_mutex_off());
- clean_child_exit(1);
+ clean_child_exit(APEXIT_CHILDSICK);
}
/* We can always use pdesc[0], but sockets at position N
@@ -678,7 +678,7 @@ static void child_main(int child_num_arg
if (status == APR_EGENERAL) {
/* resource shortage or should-not-occur occured */
- clean_child_exit(1);
+ clean_child_exit(APEXIT_CHILDSICK);
}
else if (status != APR_SUCCESS) {
continue;