From f3027dc4be6bbac04a559fe996534cabf8b6a68d Mon Sep 17 00:00:00 2001 From: Jim Jagielski Date: Wed, 3 Feb 2016 12:52:29 +0000 Subject: [PATCH] STOPPED workers are never retried... Disabled can be. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1728304 13f79535-47bb-0310-9956-ffa450edef68 --- docs/log-message-tags/next-number | 2 +- modules/proxy/proxy_util.c | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/docs/log-message-tags/next-number b/docs/log-message-tags/next-number index 0fb898f7bb..6de8f79ba4 100644 --- a/docs/log-message-tags/next-number +++ b/docs/log-message-tags/next-number @@ -1 +1 @@ -3305 +3306 diff --git a/modules/proxy/proxy_util.c b/modules/proxy/proxy_util.c index c6b03fd3f7..35e67f40d0 100644 --- a/modules/proxy/proxy_util.c +++ b/modules/proxy/proxy_util.c @@ -1946,6 +1946,12 @@ static int ap_proxy_retry_worker(const char *proxy_function, proxy_worker *worke server_rec *s) { if (worker->s->status & PROXY_WORKER_IN_ERROR) { + if (PROXY_WORKER_IS(worker, PROXY_WORKER_STOPPED)) { + ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, s, APLOGNO(3305) + "%s: Won't retry worker (%s): stopped", + proxy_function, worker->s->hostname); + return DECLINED; + } if ((worker->s->status & PROXY_WORKER_IGNORE_ERRORS) || apr_time_now() > worker->s->error_time + worker->s->retry) { ++worker->s->retries;