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

grpc / grpc-java / #20434
89%

Build:
DEFAULT BRANCH: master
Ran 06 Sep 2026 08:09PM UTC
Jobs 1
Files 687
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

04 Sep 2026 05:20AM UTC coverage: 89.211% (+0.009%) from 89.202%
#20434

push

github

web-flow
core: Reset configSelector on realChannel while entering IDLE state (#12832)

ManagedChannel will be stuck in IDLE state when xDS control plane
doesn't have a resource anymore.
The scenario is following:
1. Channel is open for a xds resource.
2. XdsNameResolver subscribes to the resource on xDS control plane. 
3. The resource is removed from xDS control plane for extended period of
time (unhealthy for more than the idle timeout on Channel)
4. Channel enters into TRANSIENT_FAILURE
5. The Idle timeout triggers and Channel shutdowns XdsNameResolver and
other resources. xDS watchers are removed.
6. The resource comes back online on xDS control plane.
7. A new GRPC call is executed targeting the channel.
8. The channel stays in IDLE state and reports:
"io.grpc.StatusRuntimeException: UNAVAILABLE: LDS resource xxxx does not
exist nodeID: yyyy" because realChannel.configSelector still points to
old state.

```    
public <ReqT, RespT> ClientCall<ReqT, RespT> newCall(
        MethodDescriptor<ReqT, RespT> method, CallOptions callOptions) {
      if (configSelector.get() != INITIAL_PENDING_SELECTOR) {
        return newClientCall(method, callOptions);
      }
...
```

38641 of 43314 relevant lines covered (89.21%)

0.89 hits per line

Coverage Regressions

Lines Coverage ∆ File
50
93.41
0.13% ../core/src/main/java/io/grpc/internal/ManagedChannelImpl.java
3
92.94
-0.42% ../okhttp/src/main/java/io/grpc/okhttp/OkHttpClientTransport.java
2
88.32
-0.93% ../netty/src/main/java/io/grpc/netty/NettyServer.java
1
87.88
-3.03% ../netty/src/main/java/io/grpc/netty/ClientTransportLifecycleManager.java
1
87.6
-0.83% ../rls/src/main/java/io/grpc/rls/LinkedHashLruCache.java
1
75.25
0.99% ../servlet/src/main/java/io/grpc/servlet/AsyncServletOutputStreamWriter.java
Jobs
ID Job ID Ran Files Coverage
1 #20434.1 06 Sep 2026 08:09PM UTC 687
89.21
Source Files on build #20434
  • Tree
  • List 687
  • Changed 14
  • Source Changed 0
  • Coverage Changed 14
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #20434
  • fc431441 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