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

grpc / grpc-java / #20311
89%

Build:
DEFAULT BRANCH: master
Ran 10 Jun 2026 06:18AM UTC
Jobs 1
Files 658
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

10 Jun 2026 06:05AM UTC coverage: 88.883% (-0.02%) from 88.9%
#20311

push

github

web-flow
servlet: fix write when not ready in AsyncServletOutputStreamWriter (#12790)

## Description

In `runOrBuffer()`, after a direct write of writeBytes data, always set
`readyAndDrained` to `false` even when `isReady()` returns `true`. This
ensures subsequent writes go through the container thread via
`onWritePossible()`, matching Tomcat's requirement that
`onWritePossible()` fire between consecutive writes.

For flush actions, the original behavior is preserved: `readyAndDrained`
only becomes `false` if `isReady()` returns `false` after the flush.
This prevents response stalls for flush-heavy workloads.

Tomcat throws:
```
java.lang.IllegalStateException: In non-blocking mode you may not write to the ServletOutputStream until the previous write has completed and isReady() returns true
```

Fixes #12723

36507 of 41073 relevant lines covered (88.88%)

0.89 hits per line

Coverage Regressions

Lines Coverage ∆ File
21
0.0
0.0% ../servlet/jakarta/build/generated/sources/jakarta-main/io/grpc/servlet/jakarta/AsyncServletOutputStreamWriter.java
5
83.02
-9.43% ../core/src/main/java/io/grpc/internal/Http2Ping.java
3
93.22
-1.69% ../core/src/main/java/io/grpc/internal/AbstractClientStream.java
3
89.62
14.36% ../servlet/src/main/java/io/grpc/servlet/AsyncServletOutputStreamWriter.java
3
76.72
-2.59% ../servlet/src/main/java/io/grpc/servlet/ServletServerStream.java
3
92.06
-1.4% ../xds/src/main/java/io/grpc/xds/client/ControlPlaneClient.java
1
90.91
-0.35% ../core/src/main/java/io/grpc/internal/DelayedClientCall.java
1
87.88
-3.03% ../netty/src/main/java/io/grpc/netty/ClientTransportLifecycleManager.java
Jobs
ID Job ID Ran Files Coverage
1 #20311.1 10 Jun 2026 06:18AM UTC 658
88.88
Source Files on build #20311
  • Tree
  • List 658
  • Changed 11
  • Source Changed 0
  • Coverage Changed 11
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #20311
  • 243b79ee on github
  • Prev Build on master
  • Next Build on master
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc