mirror of https://github.com/hashicorp/consul
d2c0945f52
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> |
||
---|---|---|
.. | ||
proxysupport | ||
testdata | ||
clusters.go | ||
clusters_test.go | ||
config.go | ||
config_test.go | ||
delta.go | ||
delta_test.go | ||
endpoints.go | ||
endpoints_test.go | ||
envoy_versioning.go | ||
envoy_versioning_test.go | ||
failover_math.go | ||
failover_math_test.go | ||
golden_test.go | ||
listeners.go | ||
listeners_ingress.go | ||
listeners_test.go | ||
naming.go | ||
net_fallback.go | ||
net_linux.go | ||
protocol_trace.go | ||
rbac.go | ||
rbac_test.go | ||
resources.go | ||
response.go | ||
routes.go | ||
routes_test.go | ||
server.go | ||
server_oss.go | ||
testing.go | ||
xds.go | ||
xds_protocol_helpers_test.go | ||
z_xds_packages.go | ||
z_xds_packages_test.go |