BUG/MINOR: queue: make sure that maintenance redispatches server queue
authorWilly Tarreau <w@1wt.eu>
Fri, 27 Sep 2024 16:54:07 +0000 (18:54 +0200)
committerWilly Tarreau <w@1wt.eu>
Wed, 2 Oct 2024 08:17:31 +0000 (10:17 +0200)
commit9417cf320f175988eefaaae45592af9b908b5a5f
treebcda12a3268e399bc95fc0e7995e78e423b191af
parent7858f663487a807007ad0682a9546bd394706f4c
BUG/MINOR: queue: make sure that maintenance redispatches server queue

Turning a server to maintenance currently doesn't redispatch the server
queue unless there's an explicit "option redispatch" and no "option
persist", while the former has never really been the purpose of this
test. Better refine this so that forced maintenance also causes the
queue to be flushed, and possibly redispatched unless the proxy has
option persist. This way now when turning a server to maintenance,
the queue is immediately flushed and streams can decide what to do.

This can be backported, though there's no need to go far since it was
never directly reported and only noticed as part of debugging some
rare "shutdown sessions" strangeness, which it might participate to.

(cherry picked from commit 1385e33eb089093dbc970dbc2759d2969ae533c5)
Signed-off-by: Willy Tarreau <w@1wt.eu>
src/queue.c