BUG/MEDIUM: servers: check the queues once enabling a server
authorWilly Tarreau <w@1wt.eu>
Tue, 7 Aug 2018 08:14:53 +0000 (10:14 +0200)
committerWilly Tarreau <w@1wt.eu>
Tue, 7 Aug 2018 08:14:53 +0000 (10:14 +0200)
commit6a78e61694d69beb49c0e8486be9550f5e8b7d08
treeed2257f898d6ee5f8442cd37e3cc203512139647
parentab657ce2511c4e19b0191fbe1c98cfd823a3c5d6
BUG/MEDIUM: servers: check the queues once enabling a server

Commit 64cc49c ("MAJOR: servers: propagate server status changes
asynchronously.") heavily changed the way the server states are
updated since they became asynchronous. During this change, some
code was lost, which is used to shut down some sessions from a
backup server and to pick pending connections from a proxy once
a server is turned back from maintenance to ready state. The
effect is that when temporarily disabling a server, connections
stay in the backend's queue, and when re-enabling it, they are
not picked and they expire in the backend's queue. Now they're
properly picked again.

This fix must be backported to 1.8.
src/server.c