]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MEDIUM: server: close new idle conns if server in maintenance
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Fri, 8 Aug 2025 15:17:26 +0000 (17:17 +0200)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Thu, 28 Aug 2025 12:55:18 +0000 (14:55 +0200)
commit67df6577ffec65b4fd24b06dbe8f5f5206b0676b
tree645e7c486bbf16c4d765c1b20048b141c9ae6a09
parentf234b40cdeaaff6d94b1b341cac9401458e1a2b3
MEDIUM: server: close new idle conns if server in maintenance

Currently, when a server is set on maintenance mode, its idle connection
are scheduled for purge. However, this does not prevent currently used
connection to become idle later on, even if the server is still off.

Change this behavior : an idle connection is now rejected by the server
if it is in maintenance. This is implemented with a new condition in
srv_add_to_idle_list() which returns an error value. In this case, muxes
stream detach callback will immediately free the connection.

A similar change is also performed in each MUX and SSL I/O handlers and
in conn_notify_mux(). An idle connection is not reinserted in its idle
list if server is in maintenance, but instead it is immediately freed.
src/connection.c
src/mux_fcgi.c
src/mux_h1.c
src/mux_h2.c
src/mux_spop.c
src/server.c
src/ssl_sock.c