Skip to content

XdsNameResolver blindly propagates XdsClient errors #8950

Closed
@ejona86

Description

@ejona86

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.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions