Skip to content

xds-federation: adding support for OD-CDS over xDS-TP concurrent with CDS SotW#41117

Merged
yanavlasov merged 4 commits intoenvoyproxy:mainfrom
adisuissa:sotw_cds_track_resources
Sep 18, 2025
Merged

xds-federation: adding support for OD-CDS over xDS-TP concurrent with CDS SotW#41117
yanavlasov merged 4 commits intoenvoyproxy:mainfrom
adisuissa:sotw_cds_track_resources

Conversation

@adisuissa
Copy link
Copy Markdown
Contributor

@adisuissa adisuissa commented Sep 17, 2025

Commit Message: xds-federation: adding support for OD-CDS over xDS-TP concurrent with CDS SotW
Additional Description:
Prior to this PR, an Envoy that used (old) ADS over SotW to fetch all the clusters and a xDS-TP-config-based source to fetch OD-CDS would see the OD-CDS clusters removed once the ADS update arrives.
This PR, changes the SotW CDS wildcard update, and adds tracking to see which resources are fetched from that source. The tracking is only used if both (old) ADS and an xDS-TP based config is configured.
This implementation is currently only for CDS, but will need to be part of the (future) xDS-Cache layer.

Continuation of #40988.

Risk Level: low - should only impact cases that use xDS-TP based configs (guarded by a false by default runtime guard).
Testing: Added both unit and integration test.
Docs Changes: N/A
Release Notes: N/A
Platform Specific Features: N/A

… CDS SotW

Signed-off-by: Adi Suissa-Peleg <adip@google.com>
…urces

Signed-off-by: Adi Suissa-Peleg <adip@google.com>
@repokitteh-read-only
Copy link
Copy Markdown

As a reminder, PRs marked as draft will not be automatically assigned reviewers,
or be handled by maintainer-oncall triage.

Please mark your PR as ready when you want it to be reviewed!

🐱

Caused by: #41117 was opened by adisuissa.

see: more, trace.

@adisuissa adisuissa marked this pull request as ready for review September 17, 2025 20:39
@adisuissa
Copy link
Copy Markdown
Contributor Author

As in #40988, assigning @KBaichoo as potential OD-CDS user (no impact on the non-xDS-TP path at the moment, but feel free to comment), and @yanavlasov and @nezdolik for config-path reviewers.
/assign @yanavlasov @nezdolik @KBaichoo

Signed-off-by: Adi Suissa-Peleg <adip@google.com>
…urces

Signed-off-by: Adi Suissa-Peleg <adip@google.com>
@yanavlasov yanavlasov merged commit e7f284a into envoyproxy:main Sep 18, 2025
25 checks passed
mbadov pushed a commit to mbadov/envoy that referenced this pull request Sep 22, 2025
… CDS SotW (envoyproxy#41117)

Prior to this PR, an Envoy that used (old) ADS over SotW to fetch all
the clusters and a xDS-TP-config-based source to fetch OD-CDS would see
the OD-CDS clusters removed once the ADS update arrives.
This PR, changes the SotW CDS wildcard update, and adds tracking to see
which resources are fetched from that source. The tracking is only used
if both (old) ADS and an xDS-TP based config is configured.
This implementation is currently only for CDS, but will need to be part
of the (future) xDS-Cache layer.

Continuation of envoyproxy#40988.

Risk Level: low - should only impact cases that use xDS-TP based configs
(guarded by a false by default runtime guard).
Testing: Added both unit and integration test.
Docs Changes: N/A
Release Notes: N/A
Platform Specific Features: N/A

---------

Signed-off-by: Adi Suissa-Peleg <adip@google.com>
Signed-off-by: Misha Badov <mbadov@google.com>
@ravi-dd
Copy link
Copy Markdown

ravi-dd commented Oct 27, 2025

This scenario also applies when:

  1. clusters are both 1) defined locally via bootstrap.dynamic_resources.cds_config.path_config_source and 2) fetched via OD CDS (for example, per route).
  2. Envoy hot restarts
  3. Envoy deletes OD CDS clusters

We implemented a work around in the go-control-plane cache. However, I'd like to contribute here and fix this case in Envoy itself.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants