NGINX "client intended to send too large chunked body" error
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Nginx |
New
|
Undecided
|
Unassigned |
Bug Description
When we use NGINX for ingress to GRPC using HTTP2, after receiving a certain number of bytes, we get the error "client intended to send too large chunked body" and a disconnect.
(We do HTTPS ingress on the same port, and use a path-based route to send the GRPC requests to the right place.)
Looking at the nginx source, in ngx_http_v2.c, function ngx_http_
Further down in the source, we see the code say b->flush = r->request_
It seems to me as if the reason this config variable is there, is to avoid infinite buffering in the proxy eating all RAM. But for a streaming connection, like HTTP2, that's not a problem.
When buffering is turned off, NGINX should either test the amount in buffer (rather than the amount streamed through,) OR it should not check this at all.
The error message can be turned off by setting client_
Hello.
This team on Launchpad is not the place to report upstream bugs and issues, unfortunately. Please file those bugs and reports on https:/ /trac.nginx. org/nginx/ - the NGINX Upstream tracker.