Skip to content

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

Merged
rboyer merged 1 commit intorelease/1.10.xfrom
1-10-x--fix-xds-delta-reconnect-wildcard
Jan 25, 2022
Merged

[1.10.x] xds: fix for delta xDS reconnect bug in LDS/CDS#12186
rboyer merged 1 commit intorelease/1.10.xfrom
1-10-x--fix-xds-delta-reconnect-wildcard

Conversation

@rboyer
Copy link
Copy Markdown
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 a team and kisunji 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
Copy Markdown
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