[Snapshot Cache] Simplify Snapshot cache responses. #1356
+396
−281
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The snapshot cache reply logic for sotw and delta watches has grown complex and very distinct from the linear cache. This has created issues recently, mostly related to the logic in
CreateWatchhaving to perfectly match the one inrespondto avoid major issues. This commit simplifies the code in the same model as the linear cache: a single method creates the response, and the watch is created if no response is returned.There is some behavior change: if the type is not Listeners or Clusters, the control-plane will now only return the modified resources, per the xDS protocol. Please create an issue if this creates problems.
Further work will build on this to: