Module kv_paging

Module kv_paging 

Source
Expand description

2026-09-25: KV blocks as a paging kind. KvPagingBackend keeps whole KV blocks in a peer’s paging arena (handshake kind PagingKind::KV); the alternative is the one-sided RdmaKvBackend, whose client addresses a fixed arena at base + group_id × group_stride.

Owner: metrale-storage KV tier. Invariants:

  • connect_kv_peer_backend returns RdmaKvBackend when METRALE_KV_PAGING is unset or 0, KvPagingBackend when it is 1, and an error for any other value (ns::kv_paging_selected).
  • A paging record is one KV block, GroupLayout::block_bytes(), keyed by ns::wire_key of the block’s K-head-0 group id.

Modules§

ns
2026-09-25: KV paging namespace and wire-key derivation, and the strict parsers for the METRALE_KV_PAGING* variables.

Functions§

kv_miss_error
2026-09-25: The error a KV paging GET miss becomes. The StorageBackend reads have no miss outcome, so a block the peer no longer holds fails the read.