]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
Merge r1904518 from trunk:
authorEric Covener <covener@apache.org>
Mon, 9 Jan 2023 13:22:44 +0000 (13:22 +0000)
committerEric Covener <covener@apache.org>
Mon, 9 Jan 2023 13:22:44 +0000 (13:22 +0000)
  *) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
     [Alessandro Cavaliere <alessandro.cavalier7 unibo.it>]

+ MMN

Submitted By: jim
Reviewed By: +1: jim, ylavic, icing

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1906496 13f79535-47bb-0310-9956-ffa450edef68

CHANGES
include/ap_mmn.h
modules/proxy/mod_proxy.h
modules/proxy/mod_proxy_hcheck.c

diff --git a/CHANGES b/CHANGES
index aca4787c34a9139e78f7be804ae8f3c50be9833d..0e6c15ef4f2aa1eecf2ce4cb7af753c5088bb86a 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -16,6 +16,9 @@ Changes with Apache 2.4.55
      continued to work, the error log was in error. Fixed PR66190.
      [Stefan Eissing]
 
+  *) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
+     [Alessandro Cavaliere <alessandro.cavalier7 unibo.it>]
+
   *) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
      [Alessandro Cavaliere <alessandro.cavalier7 unibo.it>]
 
index d11bfd2f9877e2bba0ca98ea2b8972f739f43e7b..402c23a3a89994b4e778622ebaef8218a3f9266d 100644 (file)
  *                           and AP_REG_PCRE_LOADED to ap_regex.h.
  * 20120211.124 (2.4.51-dev) Add name_ex to struct proxy_worker_shared
  * 20120211.125 (2.4.55-dev) Export mod_http2.h as public header
+ * 20120211.126 (2.4.55-dev) Add additional hcmethod_t enums and PROXY_WORKER_IS_ERROR
  *
  */
 
 #ifndef MODULE_MAGIC_NUMBER_MAJOR
 #define MODULE_MAGIC_NUMBER_MAJOR 20120211
 #endif
-#define MODULE_MAGIC_NUMBER_MINOR 125                 /* 0...n */
+#define MODULE_MAGIC_NUMBER_MINOR 126                 /* 0...n */
 
 /**
  * Determine if the server's current MODULE_MAGIC_NUMBER is at least a
index aba3bdce8af6ecf2ac8d5d34a0306dbda58f479b..6a5fe6d0b0f5ee1e51fc66f2a3112acc55430947 100644 (file)
@@ -354,6 +354,8 @@ PROXY_WORKER_HC_FAIL )
 
 #define PROXY_WORKER_IS_HCFAILED(f)   ( (f)->s->status &  PROXY_WORKER_HC_FAIL )
 
+#define PROXY_WORKER_IS_ERROR(f)   ( (f)->s->status &  PROXY_WORKER_IN_ERROR )
+
 #define PROXY_WORKER_IS(f, b)   ( (f)->s->status & (b) )
 
 /* default worker retry timeout in seconds */
index eabf43681cae0a9af1e34bb454d6c050da95dc2a..33dc6dea03225962fc440dc44e2ec710c97ca185 100644 (file)
@@ -912,7 +912,7 @@ static void * APR_THREAD_FUNC hc_check(apr_thread_t *thread, void *b)
                          (int)hc->s->method);
     }
     /* what state are we in ? */
-    else if (PROXY_WORKER_IS_HCFAILED(worker)) {
+    else if (PROXY_WORKER_IS_HCFAILED(worker) || PROXY_WORKER_IS_ERROR(worker)) {
         if (rv == APR_SUCCESS) {
             worker->s->pcount += 1;
             if (worker->s->pcount >= worker->s->passes) {