Skip to content

dynamic_modules: per-cluster persistent cross-priority host map via cluster ABI#45842

Draft
agrawroh wants to merge 1 commit into
envoyproxy:mainfrom
agrawroh:dec-1
Draft

dynamic_modules: per-cluster persistent cross-priority host map via cluster ABI#45842
agrawroh wants to merge 1 commit into
envoyproxy:mainfrom
agrawroh:dec-1

dynamic_modules: per-cluster persistent cross-priority host map via c…

472904b
Select commit
Loading
Failed to load commit list.
CI (Envoy) / Mobile/Android succeeded Jun 26, 2026 in 28m 2s

Mobile/Android (success)

Check has finished

Details

Check run finished (success ✔️)

The check run can be viewed here:

Mobile/Android (pr/45842/main@472904b)

Check started by

Request (pr/45842/main@472904b)

agrawroh @agrawroh 472904b #45842 merge main@467ee8f

dynamic_modules: per-cluster persistent cross-priority host map via cluster ABI

Description

This PR adds an opt-in persistent backing for a cluster's cross-priority host map. A dynamic modules cluster can call the new envoy_dynamic_module_callback_cluster_use_persistent_host_map callback during cluster init
to replace the default flat copy-on-write map with an immer persistent map, turning each membership update from an O(N) copy into an O(delta) update.

The map is published through a new HostLookupTable interface so the backing is swappable without changing consumers. The flat map stays the default and membership behavior is identical under either backing.


Commit Message: dynamic_modules: per-cluster persistent cross-priority host map via cluster ABI
Risk Level: Low
Testing: Added Tests
Docs Changes: Added
Release Notes: Added

Environment

Request variables

Key Value
ref e91b2d1
sha 472904b
pr 45842
base-sha 467ee8f
actor agrawroh @agrawroh
message dynamic_modules: per-cluster persistent cross-priority host map via cluster ABI...
started 1782501365.262266
target-branch main
trusted false
Build image

Container image/s (as used in this CI run)

Key Value
default docker.io/envoyproxy/envoy-build:v0.1.6
mobile docker.io/envoyproxy/envoy-build:mobile-v0.1.6
Version

Envoy version (as used in this CI run)

Key Value
major 1
minor 39
patch 0
dev true