Expand description
Unified recovery manager. Unified recovery manager.
Single recovery path that loads a
CheckpointManifest and restores
ALL state: source offsets, sink epochs, operator states, table offsets,
and watermarks.
§Recovery Protocol
store.load_latest()→Option<CheckpointManifest>- If
None→ fresh start (no recovery needed) - For each source:
source.restore(manifest.source_offsets[name]) - For each table source:
source.restore(manifest.table_offsets[name]) - For each exactly-once sink:
sink.rollback_epoch(manifest.epoch) - Return recovered state (watermark, epoch, operator states)
— caller is responsible for restoring DAG/TPC operators from
operator_states
§Fallback Recovery
If the latest checkpoint is corrupt or fails to restore, the manager iterates through all available checkpoints in reverse chronological order until one succeeds. This prevents a single corrupt checkpoint from causing total data loss.
Structs§
- Recovered
State - Result of a successful recovery from a checkpoint.
- Recovery
Manager - Unified recovery manager.