ext_proc: HTTP/1.1 upgrade request hangs with FULL_DUPLEX_STREAMED mode
- Dominant language
- C++
- Stars
- 28.9k
- Forks
- 5.6k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 437
Description
*Title*: *ext_proc: HTTP/1.1 upgrade request hangs with FULL_DUPLEX_STREAMED mode*
*Description*:
HTTP/1.1 upgrade request, client sends the headers first, then wait for the server response. After the server response received, client start to send the body.
FULL_DUPLEX_STREAMED mode currently is holding the headers, either in the ext_proc server or by Envoy, and waiting for body arrives before sending the headers to the backend server. This leads to dead-lock to handle such kind of HTTP requests.
This issue is also observed with BUFFERED mode, which buffers header and wait for body arrives before shipping the headers to the backend. This issue is tracked separately by: https://github.com/envoyproxy/envoy/issues/47081
[optional *Relevant Links*:]
>Any extra documentation required to understand the issue.
Contributor guide
Assessment
This issue has not been assessed yet.