mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-03-01 09:00:51 +00:00
[BUG] do not release the connection slot during a retry
A bug was introduced during last queue management fix. If a server connection fails, the allocated connection slot is released, but it will be needed again after the turn-around. This also causes more connections than expected to go to the server because it appears to have less connections than real. Many thanks to Rupert Fiasco, Mark Imbriaco, Cody Fauser, Brian Gupta and Alexander Staubo for promptly providing configuration and diagnosis elements to help reproduce this problem easily.
This commit is contained in:
parent
1d843131d8
commit
8262d8bd7f
@ -2686,10 +2686,8 @@ int process_srv(struct session *t)
|
||||
}
|
||||
else {
|
||||
fd_delete(t->srv_fd);
|
||||
if (t->srv) {
|
||||
if (t->srv)
|
||||
t->srv->cur_sess--;
|
||||
sess_change_server(t, NULL);
|
||||
}
|
||||
|
||||
if (!(req->flags & BF_WRITE_STATUS))
|
||||
conn_err = SN_ERR_SRVTO; // it was a connect timeout.
|
||||
|
Loading…
Reference in New Issue
Block a user