envoyproxy / envoyproxy/java-control-plane

Watch Created with Empty Resource Names

Open
#411 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
312
Forks
149
PR merge metrics
No merged PRs in 30d

Description

According to the [Envoy xDS protocol documentation](https://www.envoyproxy.io/docs/envoy/latest/api-docs/xds_protocol#how-the-client-specifies-what-resources-to-return):
```
If the list of resource names becomes empty, that means the client is no longer interested in any resources of the specified type.
```

However, the `DiscoveryRequestStreamObserver` currently creates a new watch even when the resource names list becomes empty, which violates the spec.
https://github.com/envoyproxy/java-control-plane/blob/main/server/src/main/java/io/envoyproxy/controlplane/server/DiscoveryRequestStreamObserver.java#L80-L94

I think we can just cancel the previous watch and not create another one in this case. Please let me know if this makes sense, and I’ll be happy to submit a PR.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.