xds: reset ApiState during stream termination#10827
Closed
venilnoronha wants to merge 5 commits intoenvoyproxy:masterfrom
Closed
xds: reset ApiState during stream termination#10827venilnoronha wants to merge 5 commits intoenvoyproxy:masterfrom
venilnoronha wants to merge 5 commits intoenvoyproxy:masterfrom
Conversation
Currently, when a stream is terminated, an `ApiState` that's in the paused state can remain there indefinitely. This is because `resume` is never called for that `type_url`. If the stream is reestablished, `sendDiscoveryRequest` will set that `ApiState` as pending and no `DiscoveryRequest`s are ever sent out for that type. The fix here is to explicitly reset the `ApiState` for such types during `onEstablishmentFailure` so that `sendDiscoveryRequest` can correctly start sending requests for that type again once the stream is reestablished. Signed-off-by: Venil Noronha <veniln@vmware.com>
Signed-off-by: Venil Noronha <veniln@vmware.com>
Signed-off-by: Venil Noronha <veniln@vmware.com>
Signed-off-by: Venil Noronha <veniln@vmware.com>
Member
Author
|
The fix was incorrect. PR #10728 resolves the real issue. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Description:
Currently, when a stream is terminated, an
ApiStatethat's in the paused state can remain there indefinitely. This is becauseresumeis never called for thattype_url. If the stream is reestablished,sendDiscoveryRequestwill set thatApiStateas pending and noDiscoveryRequests are ever sent out for that type.The fix here is to explicitly reset the
ApiStatefor such types duringonEstablishmentFailureso thatsendDiscoveryRequestcan correctly start sending requests for that type again once the stream is reestablished.Risk Level: High
Testing: Added test
Docs Changes: N/A
Release Notes: N/A