Skip to content

feat: reserve configurable WAL maintenance headroom - #379

Merged
beinan merged 1 commit into
lance-format:mainfrom
beinan:codex/wal-maintenance-headroom
Oct 19, 2026
Merged

beinan merged 1 commit into
lance-format:mainfrom
beinan:codex/wal-maintenance-headroom

Conversation

@beinan

@beinan beinan commented Oct 19, 2026

Copy link
Copy Markdown
Collaborator

Summary

The default proposal control window may be too small for full-copy checkpoints and log rewrites. Add Budget::limit_data so callers can lower the node-wide producer ceiling while retaining the total maintenance budget and charging every outstanding reservation. Zero and upward limit changes are rejected.

Keep public compatibility tests portable by using synthetic node addresses and a fixed, independently checked layout fingerprint. The admission module remains opt-in and does not yet change production ingestion or bound already accepted replication traffic.

Refs #378.

Testing

  • Admission/placement regression tests cover outstanding producer and maintenance reservations across a lowered ceiling.
  • Synthetic layout fingerprint independently computed with OpenSSL.
  • Full repository checks passed: workspace Rust formatting, Clippy and tests; Python pytest, Ruff and Pyright. Optional-feature tests and Clippy also passed.

Refs lance-format#378. Use synthetic placement fixtures for public compatibility tests.
@beinan
beinan merged commit 2203396 into lance-format:main Oct 19, 2026
11 checks passed
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