From 1e1f41d0f3473d86da84dc3785b7d7cbef6e9044 Mon Sep 17 00:00:00 2001 From: lsenta Date: Fri, 13 Nov 2015 10:44:22 +0100 Subject: [PATCH] BUG: http: do not abort keep-alive connections on server timeout When a server timeout is detected on the second or nth request of a keep-alive connection, HAProxy closes the connection without writing a response. Some clients would fail with a remote disconnected exception and some others would retry potentially unsafe requests. This patch removes the special case and makes sure a 504 timeout is written back whenever a server timeout is handled. Signed-off-by: lsenta --- src/proto_http.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/proto_http.c b/src/proto_http.c index 2dcac0674..d33b4a144 100644 --- a/src/proto_http.c +++ b/src/proto_http.c @@ -6125,8 +6125,6 @@ int http_wait_for_response(struct stream *s, struct channel *rep, int an_bit) else if (rep->flags & CF_READ_TIMEOUT) { if (msg->err_pos >= 0) http_capture_bad_message(&s->be->invalid_rep, s, msg, msg->msg_state, sess->fe); - else if (txn->flags & TX_NOT_FIRST) - goto abort_keep_alive; s->be->be_counters.failed_resp++; if (objt_server(s->target)) {