]> git.ipfire.org Git - thirdparty/haproxy.git/commit
[BUG] do not dequeue requests on a dead server
authorWilly Tarreau <w@1wt.eu>
Sun, 30 Nov 2008 20:51:58 +0000 (21:51 +0100)
committerWilly Tarreau <w@1wt.eu>
Sun, 30 Nov 2008 20:51:58 +0000 (21:51 +0100)
commit80b286a064eaec828b7fd10e98e3f945e8b244f3
tree0e834f41d99bd9869a3391356047c12e3b9167c4
parent304d6fb00fe32fca1bd932a301d4afb7d54c92bc
[BUG] do not dequeue requests on a dead server

Kai Krueger reported a problem when a server goes down with active
connections. A lot of connections were drained by that server. Kai
did an amazing job at tracking this bug down to the dequeuing
mechanism which forgets to check the server state before allowing
a request to be sent to a server.

The problem occurs more often with long requests, which have a chance
to complete after the server is completely marked down, and to find
requests in the global queue which have not yet been fetched by other
servers.

The fix consists in ensuring that a server is up before sending it
any new request from the queue.
include/proto/queue.h