]> git.ipfire.org Git - thirdparty/haproxy.git/commit
BUG/MEDIUM: queues: Make sure we call process_srv_queue() when leaving
authorOlivier Houchard <ohouchard@haproxy.com>
Fri, 13 Dec 2024 17:11:05 +0000 (17:11 +0000)
committerOlivier Houchard <cognet@ci0.org>
Tue, 17 Dec 2024 15:05:44 +0000 (16:05 +0100)
commitdc9ce9c26469e00ab71fe6387dbd13010d4930f0
tree88f9209c482557350e093f3db318ab3c624b182f
parent4f32d03360e42a3e7fe4ed71012ec90339b9731d
BUG/MEDIUM: queues: Make sure we call process_srv_queue() when leaving

In stream_free(), make sure we call process_srv_queue() each time we
call sess_change_server(), otherwise a server may end up not dequeuing
any stream when it could do so. In some extreme cases it could lead to
an infinite loop, as the server would appear to be available, as its
"served" parameter would be < maxconn, but would end up not being used,
as there are elements still in its queue.

This should be backported up to 2.6.
src/stream.c