[PATCH] Proxy: reset pending control frames on HTTP/2 upstream reinit.
David Carlier
devnexen at gmail.com
Thu Feb 19 09:32:55 UTC 2026
Previously, ctx->out was not cleared in ngx_http_proxy_v2_reinit_request(),
which could cause stale HTTP/2 control frames (SETTINGS ACK, PING ACK,
WINDOW_UPDATE) queued for the old upstream connection to be sent to a new
upstream connection during a retry.
---
src/http/modules/ngx_http_proxy_v2_module.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/http/modules/ngx_http_proxy_v2_module.c b/src/http/modules/ngx_http_proxy_v2_module.c
index 2c8a3d4d1..4c282a864 100644
--- a/src/http/modules/ngx_http_proxy_v2_module.c
+++ b/src/http/modules/ngx_http_proxy_v2_module.c
@@ -946,6 +946,7 @@ ngx_http_proxy_v2_reinit_request(ngx_http_request_t *r)
ctx->connection = NULL;
ctx->in = NULL;
ctx->busy = NULL;
+ ctx->out = NULL;
return NGX_OK;
}
--
2.51.0
More information about the nginx-devel
mailing list