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

grpc / grpc-java / #19797
89%

Build:
DEFAULT BRANCH: master
Ran 04 May 2025 08:08PM UTC
Jobs 1
Files 615
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

23 Apr 2025 04:18PM UTC coverage: 88.616% (-0.02%) from 88.638%
#19797

push

github

web-flow
xds: XdsDepManager should ignore updates after shutdown

This prevents a NPE and subsequent channel panic when trying to build a
config (because there are no watchers, so waitingOnResource==false)
without any listener and route.
```
java.lang.NullPointerException: Cannot invoke "io.grpc.xds.XdsDependencyManager$RdsUpdateSupplier.getRdsUpdate()" because "routeSource" is null
    at io.grpc.xds.XdsDependencyManager.buildUpdate(XdsDependencyManager.java:295)
    at io.grpc.xds.XdsDependencyManager.maybePublishConfig(XdsDependencyManager.java:266)
    at io.grpc.xds.XdsDependencyManager$EdsWatcher.onChanged(XdsDependencyManager.java:899)
    at io.grpc.xds.XdsDependencyManager$EdsWatcher.onChanged(XdsDependencyManager.java:888)
    at io.grpc.xds.client.XdsClientImpl$ResourceSubscriber.notifyWatcher(XdsClientImpl.java:929)
    at io.grpc.xds.client.XdsClientImpl$ResourceSubscriber.lambda$onData$0(XdsClientImpl.java:837)
    at io.grpc.SynchronizationContext.drain(SynchronizationContext.java:96)
```

I think this fully-fixes the problem today, but not tomorrow.
subscribeToCluster() is racy as well, but not yet used.

This was noticed when idleTimeout was firing, with some other code
calling getState(true) to wake the channel back up. That may have made
this panic more visible than it would be otherwise, but that has not
been investigated.

b/412474567

34779 of 39247 relevant lines covered (88.62%)

0.89 hits per line

Uncovered Existing Lines

Lines Coverage ∆ File
1
96.55
-0.57% ../core/src/main/java/io/grpc/internal/DelayedClientTransport.java
1
91.37
-0.21% ../netty/src/main/java/io/grpc/netty/NettyServerHandler.java
5
83.02
-9.43% ../core/src/main/java/io/grpc/internal/Http2Ping.java
7
77.08
-7.29% ../servlet/src/main/java/io/grpc/servlet/AsyncServletOutputStreamWriter.java
27
91.77
-0.02% ../xds/src/main/java/io/grpc/xds/XdsDependencyManager.java
Jobs
ID Job ID Ran Files Coverage
1 #19797.1 04 May 2025 08:08PM UTC 615
88.62
Source Files on build #19797
  • Tree
  • List 615
  • Changed 8
  • Source Changed 0
  • Coverage Changed 8
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #19797
  • 25199e9d 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