From: Willy Tarreau Date: Thu, 31 Oct 2019 14:10:03 +0000 (+0100) Subject: BUG/MEDIUM: mux-h2: report no available stream on a connection having errors X-Git-Tag: v2.1-dev4~11 X-Git-Url: http://www.kaiwu.me/postgresql/commit/static/gitweb.js?a=commitdiff_plain;h=c61966f9b468b72528f854f4bc64bb5934751384;p=haproxy.git BUG/MEDIUM: mux-h2: report no available stream on a connection having errors If an H2 mux has met an error, we must not report available streams anymore, or it risks to accumulate new streams while not being able to process them. This should be backported to 2.0 and 1.9. --- diff --git a/src/mux_h2.c b/src/mux_h2.c index e83f346e3..22bf42919 100644 --- a/src/mux_h2.c +++ b/src/mux_h2.c @@ -752,6 +752,9 @@ static int h2_avail_streams(struct connection *conn) if (h2c->last_sid >= 0) return 0; + if (h2c->st0 >= H2_CS_ERROR) + return 0; + /* note: may be negative if a SETTINGS frame changes the limit */ ret1 = h2c->streams_limit - h2c->nb_streams;