juncture_core/pregel/durability.rs
1//! Durability mode for checkpoint persistence
2//!
3//! Controls how checkpoint writes are synchronized to durable storage
4//! during graph execution.
5
6/// Checkpoint durability mode
7///
8/// Determines how checkpoint writes are synchronized to storage backends.
9/// Higher durability guarantees come at the cost of increased latency.
10#[derive(Clone, Debug, Default, PartialEq, Eq)]
11pub enum Durability {
12 /// Synchronous checkpoint writes (default)
13 ///
14 /// Each checkpoint is fully written to storage before the next
15 /// superstep begins. Provides the strongest durability guarantee.
16 #[default]
17 Sync,
18
19 /// Asynchronous checkpoint writes
20 ///
21 /// Checkpoint writes are submitted to storage but execution
22 /// continues without waiting for confirmation. Durability
23 /// depends on the storage backend's write-behind behavior.
24 Async,
25
26 /// No checkpoint persistence
27 ///
28 /// Checkpoints are not persisted to external storage. Used
29 /// for ephemeral or development runs where durability is
30 /// not required.
31 Exit,
32}
33
34// Rust guideline compliant 2026-05-19