-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
error during reading http1.1 response body with trailers #4714
Comments
Looks like i found the reason of this. hyperium/hyper#2171 |
@strobil thanks for making us aware of this and for your PR. Once the PR to grpc-ecosystem/grpc-gateway is released, we can pull the changes into the proxy. We'd love your help with a pull request to that repo 😄 |
@cpretzer hello again! My PR was merged to grpc-ecosystem/grpc-gateway, but this is more likely to be a workaround rather then fix, because of the root cause of this problem stays in the hyper source code, which is used by linkerd2-proxy. I think we could close this issue for now, but this problem can appear again with some other software that are using HTTP 1.1 Trailers in its code. What do you think? |
hi @strobil, thanks for the update When we triaged this issue, and once the hyper issue is released, we'll pull that version into the proxy codebase. I'll close this for now since the grpc-gateway workaround is in place. |
Bug Report
What is the issue?
linkerd proxy unable to read http1.1 response with trailers
How can it be reproduced?
http server must respond with chunked transfer-encoding with trailers, example (wireshark dump) in attachment below
http_response_with_trailers.zip
Logs, error output, etc
proxy DEBUG log
linkerd check
outputEnvironment
Possible solution
It looks like a bug in hyperium/hyper
Additional context
We are using grpc-gateway as a REST proxy for our GRPC services.
grpc-gateway is adding
Grpc-Trailer-Content-Type: application/grpc
trailer to the end of response body, then, linkerd2 proxy unable to read it correctly and request fails withnet::ERR_INCOMPLETE_CHUNKED_ENCODING
in Google Chrome browser.According to example on this page - http response from a server is absolutely legitimate.
The text was updated successfully, but these errors were encountered: