consul/agent/xds
R.B. Boyer d2c0945f52
xds: fix for delta xDS reconnect bug in LDS/CDS (#12174)
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 <fredwanghuan@gmail.com>
2022-01-25 11:24:27 -06:00
..
proxysupport connect: Upgrade Envoy 1.20 to 1.20.1 (#11895) 2022-01-18 14:35:27 -05:00
testdata proxycfg: introduce explicit UpstreamID in lieu of bare string (#12125) 2022-01-20 10:12:04 -06:00
clusters.go proxycfg: introduce explicit UpstreamID in lieu of bare string (#12125) 2022-01-20 10:12:04 -06:00
clusters_test.go proxycfg: introduce explicit UpstreamID in lieu of bare string (#12125) 2022-01-20 10:12:04 -06:00
config.go Support Incremental xDS mode (#9855) 2021-04-29 13:54:05 -05:00
config_test.go Support Incremental xDS mode (#9855) 2021-04-29 13:54:05 -05:00
delta.go xds: fix for delta xDS reconnect bug in LDS/CDS (#12174) 2022-01-25 11:24:27 -06:00
delta_test.go xds: fix for delta xDS reconnect bug in LDS/CDS (#12174) 2022-01-25 11:24:27 -06:00
endpoints.go proxycfg: introduce explicit UpstreamID in lieu of bare string (#12125) 2022-01-20 10:12:04 -06:00
endpoints_test.go proxycfg: introduce explicit UpstreamID in lieu of bare string (#12125) 2022-01-20 10:12:04 -06:00
envoy_versioning.go xds: fix for delta xDS reconnect bug in LDS/CDS (#12174) 2022-01-25 11:24:27 -06:00
envoy_versioning_test.go xds: fix for delta xDS reconnect bug in LDS/CDS (#12174) 2022-01-25 11:24:27 -06:00
failover_math.go xds: default to speaking xDS v3, but allow for v2 to be spoken upon request (#9658) 2021-02-26 16:23:15 -06:00
failover_math_test.go partition dicovery chains (#10983) 2021-09-07 16:29:32 -04:00
golden_test.go xds: default to speaking xDS v3, but allow for v2 to be spoken upon request (#9658) 2021-02-26 16:23:15 -06:00
listeners.go proxycfg: introduce explicit UpstreamID in lieu of bare string (#12125) 2022-01-20 10:12:04 -06:00
listeners_ingress.go proxycfg: introduce explicit UpstreamID in lieu of bare string (#12125) 2022-01-20 10:12:04 -06:00
listeners_test.go proxycfg: introduce explicit UpstreamID in lieu of bare string (#12125) 2022-01-20 10:12:04 -06:00
naming.go connect: generate the full SNI names for discovery targets in the compiler rather than in the xds package (#6340) 2019-08-19 13:03:03 -05:00
net_fallback.go re-run gofmt on 1.17 (#11579) 2021-11-16 12:04:01 -06:00
net_linux.go re-run gofmt on 1.17 (#11579) 2021-11-16 12:04:01 -06:00
protocol_trace.go Support Incremental xDS mode (#9855) 2021-04-29 13:54:05 -05:00
rbac.go Update spiffe ID patterns used for RBAC 2021-09-14 11:00:03 -06:00
rbac_test.go connect: Remove support for Envoy 1.16 (#11354) 2021-10-27 18:51:35 -07:00
resources.go Support Incremental xDS mode (#9855) 2021-04-29 13:54:05 -05:00
response.go Continue working through proxy and agent 2021-05-04 12:41:43 -07:00
routes.go proxycfg: introduce explicit UpstreamID in lieu of bare string (#12125) 2022-01-20 10:12:04 -06:00
routes_test.go proxycfg: introduce explicit UpstreamID in lieu of bare string (#12125) 2022-01-20 10:12:04 -06:00
server.go Merge branch 'main' into serve-panic-recovery 2021-11-06 16:12:06 +01:00
server_oss.go re-run gofmt on 1.17 (#11579) 2021-11-16 12:04:01 -06:00
testing.go xds: fix for delta xDS reconnect bug in LDS/CDS (#12174) 2022-01-25 11:24:27 -06:00
xds.go Remove unused customEDSClusterJSON 2020-03-27 15:38:16 -04:00
xds_protocol_helpers_test.go proxycfg: introduce explicit UpstreamID in lieu of bare string (#12125) 2022-01-20 10:12:04 -06:00
z_xds_packages.go xds: ensure that all envoyproxy/go-control-plane protobuf symbols are linked into the final binary (#10131) 2021-04-29 14:58:26 -05:00
z_xds_packages_test.go xds: ensure that all envoyproxy/go-control-plane protobuf symbols are linked into the final binary (#10131) 2021-04-29 14:58:26 -05:00