• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

grpc / grpc-java / #20536
89%

Build:
DEFAULT BRANCH: master
Ran 16 Oct 2026 01:15PM UTC
Jobs 1
Files 696
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

16 Oct 2026 01:01PM UTC coverage: 89.418% (-0.05%) from 89.464%
#20536

push

github

web-flow
netty: Ignore inbound frames without a transport state (#13073)

HEADERS and DATA callbacks dereference a null `TransportState` when the
HTTP/2 stream exists without an associated gRPC stream, which can shut
down the client connection. Ignore these headers and return the
discarded DATA payload and padding to Netty's inbound flow controller.
Keepalive still observes the received frames.

Add four regression tests that feed serialized frames through the
decoder, covering headers, trailers, and DATA with and without
END_STREAM. They check buffer release, consumed flow-control bytes,
keepalive notifications, and continued delivery to another stream.

Fixes #13065.

## Validation

- The four new tests fail with the reported null dereference against
upstream `9e0ff283e`.
- `NettyClientHandlerTest`: 63 tests passed after the fix.
- Netty main/test Checkstyle and Animal Sniffer checks passed.
- Full Netty suite on macOS with JDK 21: 574 passed, 79 skipped, and 2
timed out. `NettyServerTest.multiPortConnections` and
`NettyServerTest.connectionSettingsPropagated` both also time out after
60 seconds at the same stack locations in a clean checkout of upstream
`9e0ff283e`. The full suite is not green locally.

The tests construct the missing-transport-state condition
deterministically; they do not reproduce the original Pub/Sub startup
race.

39359 of 44017 relevant lines covered (89.42%)

0.89 hits per line

Coverage Regressions

Lines Coverage ∆ File
45
91.25
-0.02% ../netty/src/main/java/io/grpc/netty/NettyServerHandler.java
7
59.59
-3.63% ../netty/src/main/java/io/grpc/netty/NettyServerBuilder.java
6
82.34
-1.8% ../stub/src/main/java/io/grpc/stub/ClientCalls.java
5
97.13
-0.49% ../xds/src/main/java/io/grpc/xds/ExternalProcessorClientInterceptor.java
3
76.72
-1.72% ../servlet/src/main/java/io/grpc/servlet/ServletServerStream.java
2
93.38
-0.32% ../okhttp/src/main/java/io/grpc/okhttp/OkHttpServerTransport.java
2
74.26
-0.99% ../servlet/src/main/java/io/grpc/servlet/AsyncServletOutputStreamWriter.java
1
79.22
-0.39% ../netty/src/main/java/io/grpc/netty/NettyChannelBuilder.java
1
93.24
0.14% ../okhttp/src/main/java/io/grpc/okhttp/OkHttpClientTransport.java
Jobs
ID Job ID Ran Files Coverage
1 #20536.1 16 Oct 2026 01:15PM UTC 696
89.42
Source Files on build #20536
  • Tree
  • List 696
  • Changed 11
  • Source Changed 0
  • Coverage Changed 11
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #20536
  • fe4f1457 on github
  • Prev Build on master
  • Next Build on master
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc