From: Jim Jagielski Date: Wed, 3 Feb 2016 14:30:53 +0000 (+0000) Subject: Only health-check workers which are not STOPPED X-Git-Tag: 2.5.0-alpha~2212 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8b3107f64c769897c6cd0f3c5ea2c11daa1ea933;p=thirdparty%2Fapache%2Fhttpd.git Only health-check workers which are not STOPPED Only log Checking if we are actually checking git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1728325 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/modules/proxy/mod_proxy_hcheck.c b/modules/proxy/mod_proxy_hcheck.c index d861687e18f..77f2c6dce81 100644 --- a/modules/proxy/mod_proxy_hcheck.c +++ b/modules/proxy/mod_proxy_hcheck.c @@ -905,14 +905,16 @@ static apr_status_t hc_watchdog_callback(int state, void *data, workers = (proxy_worker **)balancer->workers->elts; for (n = 0; n < balancer->workers->nelts; n++) { worker = *workers; - ap_log_error(APLOG_MARK, APLOG_TRACE2, 0, s, - "Checking %s worker: %s [%d] (%pp)", balancer->s->name, - worker->s->name, worker->s->method, worker); - if ((worker->s->method != NONE) && (now > worker->s->updated + worker->s->interval)) { + if (!PROXY_WORKER_IS(worker, PROXY_WORKER_STOPPED) && + (worker->s->method != NONE) && + (now > worker->s->updated + worker->s->interval)) { baton_t *baton; /* This pool must last the lifetime of the (possible) thread */ apr_pool_t *ptemp; apr_pool_create(&ptemp, ctx->p); + ap_log_error(APLOG_MARK, APLOG_TRACE2, 0, s, + "Checking %s worker: %s [%d] (%pp)", balancer->s->name, + worker->s->name, worker->s->method, worker); if ((rv = hc_init_worker(ctx, worker)) != APR_SUCCESS) { return rv;