Skip to main content

Module recovery_manager

Module recovery_manager 

Source
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

  1. store.load_latest()Option<CheckpointManifest>
  2. If None → fresh start (no recovery needed)
  3. For each source: source.restore(manifest.source_offsets[name])
  4. For each table source: source.restore(manifest.table_offsets[name])
  5. For each exactly-once sink: sink.rollback_epoch(manifest.epoch)
  6. 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§

RecoveredState
Result of a successful recovery from a checkpoint.
RecoveryManager
Unified recovery manager.