Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[1.10.x] xds: fix for delta xDS reconnect bug in LDS/CDS #12186

Merged
merged 1 commit into from
Jan 25, 2022

Conversation

rboyer
Copy link
Member

@rboyer rboyer commented Jan 25, 2022

Backport of #12174 to 1.10.x

When a wildcard xDS type (LDS/CDS/SRDS) reconnects from a delta xDS stream,
prior to envoy `1.19.0` it would populate the `ResourceNamesSubscribe` field
with the full list of currently subscribed items, instead of simply omitting it
to infer that it wanted everything (which is what wildcard mode means).

This upstream issue was filed in envoyproxy/envoy#16063 and fixed in
envoyproxy/envoy#16153 which went out in Envoy `1.19.0` and is fixed in later
versions (later refactored in envoyproxy/envoy#16855).

This PR conditionally forces LDS/CDS to be wildcard-only even when the
connected Envoy requests a non-wildcard subscription, but only does so on
versions prior to `1.19.0`, as we should not need to do this on later versions.

This fixes the failure case as described here: #11833 (comment)

Co-authored-by: Huan Wang <[email protected]>
@rboyer rboyer requested review from kisunji and a team January 25, 2022 17:36
@rboyer rboyer self-assigned this Jan 25, 2022
@github-actions github-actions bot added the theme/envoy/xds Related to Envoy support label Jan 25, 2022
@rboyer rboyer added the pr/no-changelog PR does not need a corresponding .changelog entry label Jan 25, 2022
@rboyer rboyer merged commit de6795b into release/1.10.x Jan 25, 2022
@rboyer rboyer deleted the 1-10-x--fix-xds-delta-reconnect-wildcard branch January 25, 2022 20:25
@hc-github-team-consul-core
Copy link
Collaborator

🍒 If backport labels were added before merging, cherry-picking will start automatically.

To retroactively trigger a backport after merging, add backport labels and re-run https://circleci.com/gh/hashicorp/consul/565022.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pr/no-changelog PR does not need a corresponding .changelog entry theme/envoy/xds Related to Envoy support
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants