On Sat, May 30, 2020 at 8:14 AM Yann Ylavic <[email protected]> wrote:
>
> How about we replace all the "proxy-send{cl,chunks,chunked}" logic in
> mod_proxy_http (trunk only) with a single (inverse)
> "proxy-no-chunked"?
>
> I think almost all backends nowadays support "chunked"
> transfer-encoding, so the default would be to use it when we can't
> determine content-length (because the client body is already chunked
> or because an input filter may change the length of the body).
>
> By doing this we avoid spooling by default, with associated latency,
> and filesystem filling up, and ... you name it.
> By the way we also avoid three `apr_table_get(r->subprocess_env, ..)`
> calls per request, and simplify the code.
>
> For the rare cases (IMHO) where the origin server really does not
> support T-E, there would be "proxy-no-chunked", which would spool when
> necessary.


+1 i have always found this area confusing and fewer spooling cases
(while retaining the spool-to-mem and prefetch stuff) looks good.
I find most "disable chunked encoding" workarounds are just changing a
symptom/error message anyway.

Reply via email to