Expand description
Domain-free atomic journal behavior over content-addressed objects.
A journal publishes immutable objects before making entries visible and
advances its head through one fenced compare-and-swap transition. Backends
implement JournalBackend::admit; callers use Journal so the gapless,
closure, redelivery, and replay laws are enforced once.
Structs§
- Admission
- One atomic admission request. Implementations publish immutable objects and compare the head/fence in the same linearized operation.
- Backend
Capabilities - Evidence supplied by the concrete Table/Dir binding at construction.
- DirProjection
- Read-only Dir-shaped snapshot grouped by journal/object namespaces.
- Host
DirJournal Backend - Crash-durable journal composition over the canonical host-backed Table/Dir port.
- Journal
- The single state-machine implementation shared by every backend.
- Journal
Entry - One immutable journal fact. Kinds and payload interpretation remain open.
- Journal
Head - The sole authoritative append position.
- Journal
Object - Immutable canonical bytes and their content identity.
- Lease
- A writer generation. Only the backend can mint a live fence.
- Memory
Backend - Deterministic law-reference backend. It is deliberately not durable.
- Replay
- Stored
State - A consistent backend snapshot used for verification and replay.
- Table
Projection - Read-only flat Table-shaped snapshot. It exposes no mutation method and is never consulted by journal authority.
- Verification
Enums§
- Failpoint
- Stable crash-injection boundaries in the publication protocol.
- Journal
Error - Projection
Row - Detached row in a read-only projection.
Traits§
- Journal
Backend - Object-safe storage seam. A Table backend implements
admitwith canonicaltable/cas; it must refuse writes unless CAS and durability are provable.