If a watch in XdsClient fails, XdsNameResolver will propagate the error directly to the channel without adding context and without setting a proper status.
A user saw
[Channel<2441>: (xds:///<snip>)] Failed to resolve name. status=Status{code=NOT_FOUND, description=Requested entity was not found., cause=null}
And accompanying RPC failures:
Caused by: java.lang.RuntimeException: io.grpc.StatusRuntimeException with message: NOT_FOUND: Requested entity was not found.
That RPC failure is very bad, because it isn't clear it is from XdsNR and should be UNAVAILABLE.
As seen in b/221844501.
If a watch in XdsClient fails, XdsNameResolver will propagate the error directly to the channel without adding context and without setting a proper status.
grpc-java/xds/src/main/java/io/grpc/xds/XdsNameResolver.java
Line 725 in 3b9ff36
A user saw
And accompanying RPC failures:
That RPC failure is very bad, because it isn't clear it is from XdsNR and should be UNAVAILABLE.
As seen in b/221844501.