mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2026-04-03 18:11:06 +02:00
BUG/MEDIUM: mux-h1: Disable 0-copy forwarding when draining the request
When an early response is sent to the client and the H1 connection is switched to the draining state, we must take care to disable the 0-copy data forwarding because the backend side is no longer here. It is an issue because this prevent any regular receive to be performed. This patch should fix the issue #3316. It must be backported as far as 3.0.
This commit is contained in:
parent
8056117e98
commit
c010c3924a
@ -4672,6 +4672,7 @@ static void h1_detach(struct sedesc *sd)
|
||||
|
||||
if (h1c->state == H1_CS_RUNNING && !(h1c->flags & H1C_F_IS_BACK) && h1s->req.state != H1_MSG_DONE) {
|
||||
h1c->state = H1_CS_DRAINING;
|
||||
h1c->flags &= ~H1C_F_WANT_FASTFWD;
|
||||
h1c_report_term_evt(h1c, muxc_tevt_type_graceful_shut);
|
||||
COUNT_IF(1, "Deferring H1S destroy to drain message");
|
||||
TRACE_DEVEL("Deferring H1S destroy to drain message", H1_EV_STRM_END, h1s->h1c->conn, h1s);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user