]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MAJOR: fwlc: Count an avoided server as unusable.
authorOlivier Houchard <cognet@ci0.org>
Fri, 20 Jun 2025 13:06:04 +0000 (15:06 +0200)
committerOlivier Houchard <cognet@ci0.org>
Fri, 20 Jun 2025 13:29:51 +0000 (15:29 +0200)
When fwlc_get_next_server(), if a server to avoid has been provided, and
we have to ignore it, don't forget to increase the number of unusable
servers, otherwise we may end up ignoring it over and over, never
switching to another server, in an infinite loop until the process gets
killed.
This hopefully fixes Github issues #3004 and #3014.

This should be backported to 3.2.

src/lb_fwlc.c

index a082505e333c0afd5af2ec42a9936b97210874a4..4a6d5bd643d064b2f70e13dcf62410d3a65d1f3d 100644 (file)
@@ -806,6 +806,7 @@ redo:
                                                 break;
                                         }
                                        avoided = s;
+                                       unusable++;
                                }
                                else
                                        unusable++;