Skip to content

MINOR: maps: add atomic map replacement endpoint - #422

Open
tkjaer wants to merge 2 commits into
haproxytech:masterfrom
tkjaer:tkjaer-atomic-map-replacement
Open

tkjaer wants to merge 2 commits into
haproxytech:masterfrom
tkjaer:tkjaer-atomic-map-replacement

Conversation

@tkjaer

@tkjaer tkjaer commented Nov 4, 2026

Copy link
Copy Markdown

Adds a PUT /services/haproxy/runtime/maps/{parent_name}/entries operation for replacing all entries in a runtime map.

The HAProxy map is replaced atomically using the prepared map generation support added in client-native#141. When force_sync=true, the managed map file is also replaced atomically while preserving the requested entry order.

Storage eligibility is checked before changing the runtime map. If the storage write fails after runtime publication, the request returns an error so it can be retried safely.

The client-native upgrade also carries additive generated schema fields for ACME EAB and tune.streams-elasticity.

Upgrade client-native to include atomic runtime map replacement and the
map payload chunking fix. This also carries additive ACME EAB and
tune.streams-elasticity schema fields.
Add a PUT operation for replacing every runtime map entry through
client-native's prepared map generation support.

With force_sync, validate that the map is managed before publishing it,
then replace the storage file atomically without changing entry order.
Return persistence failures so callers can retry safely.
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.

1 participant