Skip to main content

laminar_core/streaming/checkpoint/
mod.rs

1//! Streaming checkpoint configuration.
2
3/// Configuration for streaming checkpoints.
4#[derive(Debug, Clone, Default)]
5pub struct StreamCheckpointConfig {
6    /// Checkpoint interval in milliseconds. `None` = manual only.
7    pub interval_ms: Option<u64>,
8    /// One end-to-end attempt deadline in milliseconds, spanning sink fencing, alignment,
9    /// capture, durable publication, and completion delivery. `None` = default (`120_000`).
10    pub timeout_ms: Option<u64>,
11    /// Directory for persisting checkpoints. `None` uses the database storage directory, then
12    /// falls back to `./data`; it never silently selects volatile checkpoint storage.
13    pub data_dir: Option<std::path::PathBuf>,
14    /// Maximum bytes admitted for one participant's checkpoint node-data object.
15    /// `None` uses `DEFAULT_MAX_CHECKPOINT_NODE_DATA_BYTES`.
16    pub max_node_data_bytes: Option<u64>,
17}
18
19#[cfg(test)]
20mod tests;