envoyproxy / envoyproxy/envoy

gRPC trailers dropped by oghttp2 when the response is exactly 65535 bytes

Open
#40,821 11 comments 1 reaction 0 assignees View on GitHub
bug no stalebot oghttp2
Dominant language
C++
Stars
28.9k
Forks
5.6k
Avg merge
1d 20h
Merged PRs (30d)
437

Description

**Note**:
While this ticket remains open, if you as a user are encountering this issue, you can likely remedy it by explicitly setting the runtime flag `envoy.reloadable_features.http2_use_oghttp2` to false.

*Description*:
Recently we upgraded to Istio 1.26.2 which includes a version of Envoy (ad034036be91ff9f0cd1993e5053dd4f3ee64895/1.34.2-dev/Clean/RELEASE/BoringSSL) that enables the envoy.reloadable_features.http2_use_oghttp2 runtime flag by default - this causes issues for gRPC requests where the response is 65535 bytes.

*Repro steps*:
- Connect two services together with Envoy.
- Use HTTP2 (and gRPC).
- Return a response that Envoy measures as 65535 bytes.
- The trailers of the response will be missing.

Issue reported on the Istio repo: https://github.com/istio/istio/issues/56734

*Admin and Stats Output*:
>Include the admin output for the following endpoints: /stats,
/clusters, /routes, /server_info. For more information, refer to the
[admin endpoint documentation.](https://www.envoyproxy.io/docs/envoy/latest/operations/admin)

[server_info.txt](https://github.com/user-attachments/files/21922433/server_info.txt)
[clusters.txt](https://github.com/user-attachments/files/21922426/clusters.txt)
[stats.txt](https://github.com/user-attachments/files/21922427/stats.txt)

*Config*:
>Include the config used to configure Envoy.

Client: [config.json](https://github.com/user-attachments/files/21922442/config.json)

*Logs*:
>Include the access logs and the Envoy logs.

[client-sidecar.txt](https://github.com/user-attachments/files/21922454/client-sidecar.txt)
[server-sidecar.txt](https://github.com/user-attachments/files/21922455/server-sidecar.txt)

*TCP dumps:*

[pcaps.zip](https://github.com/user-attachments/files/21922481/pcaps.zip)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.