From f6b46944d4aaf58f16fa63cfa9eb64ade7b7b917 Mon Sep 17 00:00:00 2001 From: Ruediger Pluem Date: Sat, 4 Feb 2006 21:25:48 +0000 Subject: [PATCH] * Do not overwrite the status of initialized workers and respect the configured status of uninitilized workers when creating a new child process. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@374929 13f79535-47bb-0310-9956-ffa450edef68 --- CHANGES | 4 ++++ modules/proxy/mod_proxy_balancer.c | 11 ++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index 5aafe189b3..d00490bbca 100644 --- a/CHANGES +++ b/CHANGES @@ -2,6 +2,10 @@ Changes with Apache 2.3.0 [Remove entries to the current 2.0 and 2.2 section below, when backported] + *) mod_proxy_balancer: Do not overwrite the status of initialized workers and + respect the configured status of uninitilized workers when creating a new + child process. [Ruediger Pluem] + *) mod_speling: Stop crashing with certain non-file requests. [Jeff Trawick] *) mod_proxy_ajp: Support common headers of the AJP protocol in responses. diff --git a/modules/proxy/mod_proxy_balancer.c b/modules/proxy/mod_proxy_balancer.c index def1919254..c05635a234 100644 --- a/modules/proxy/mod_proxy_balancer.c +++ b/modules/proxy/mod_proxy_balancer.c @@ -84,7 +84,16 @@ static int init_balancer_members(proxy_server_conf *conf, server_rec *s, for (i = 0; i < balancer->workers->nelts; i++) { ap_proxy_initialize_worker_share(conf, workers, s); - workers->s->status = PROXY_WORKER_INITIALIZED; + if (!(workers->s->status & PROXY_WORKER_INITIALIZED)) { + workers->s->status |= (workers->status | PROXY_WORKER_INITIALIZED); + ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, s, + "proxy: BALANCER: initialized balancer member %d for " + "balancer %s in child %" APR_PID_T_FMT " for (%s) " + "min=%d max=%d smax=%d", + workers->id, balancer->name, getpid(), + workers->hostname, workers->min, workers->hmax, + workers->smax); + } ++workers; } -- 2.40.0