Server not accepting requests after update from 1.41.0 to 1.42.0
See original GitHub issueAfter upgrading from 1.41.0
to 1.42.0
, our services stopped receiving requests, and logging following INFO message:
[id: 0x84be72e8, L:/172.21.223.199:8080 - R:/172.21.225.64:58430] ignoring DATA frame for stream RST_STREAM sent.
- sourceClassName:
io.grpc.netty.shaded.io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener
- sourceFileName:
defaulthttp2connectiondecoder.java
- sourceMethodName:
shouldIgnoreHeadersOrDataFrame
- sourceLineNumber:
648
We think that it could be caused by the following changes:
- netty: Requests with Connection header are malformed
- dep: bump netty to 4.1.63.Final and tcnative to 2.0.38.Final
As we are running our workload also in a legacy environment where proxies don’t handle HTTP/2 100% correctly, the issue is probably in the Connection
header.
Is your feature request related to a problem?
Connections with the Connection
header are refused.
Describe the solution you’d like
Make this validation configurable, so have a new method in ServerBuilder
class 🙏
Describe alternatives you’ve considered
Remove this validation completely.
Additional context
Unfortunately, this is a critical issue for us that blocks us from updating gRPC libraries 😢
My guess why netty doesn’t reject the connection with the
Connection
header is that there are still too many legacy workloads that could be broken by this change.
Issue Analytics
- State:
- Created 2 years ago
- Comments:10 (4 by maintainers)
Top Results From Across the Web
Version 1.47.0 | Directadmin Docs
If you chose to update, uou must update BOTH your exim.pl, and install a new exim.conf. You can patch from 4.2.2 to 4.2.3....
Read more >Release Notes v1.42.5 | Symphony | Documentation
Symphony will provide support for the new release version and 3 previous releases. If there is no new release for a given sprint...
Read more >Download (UNIVERSAL) - ReadonlyREST
A solid, open source Elasticsearch security Plugin. Download the Free Version Now.
Read more >Patch Notes - Adventure Quest 3D, Cross Platform MMORPG
1.41.0 - 1.42.0 fixes and updates ... After 15 seconds of no server communication, the Player will be ... Added a Setting to...
Read more >Changelog — conan 1.43.4 documentation
Feature: Update conan new modern templates --template=cmake_lib and ... liburl3 version to be less than 1.26, so it does not break with requests...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
We can provide a system property or environment variable to disable the new validation. And then we just coordinate to determine a reasonable amount of time to leave it in place.
The system property
io.grpc.netty.disableConnectionHeaderCheck
will be available. Note that it will beio.grpc.netty.shaded.io.grpc.netty.disableConnectionHeaderCheck
for grpc-netty-shaded.