pub struct UnalignedCheckpointConfig {
pub enabled: bool,
pub alignment_timeout_threshold: Duration,
pub max_inflight_buffer_bytes: usize,
pub force_unaligned: bool,
}Expand description
Configuration for unaligned checkpoints.
When barrier alignment takes too long (due to backpressure on slow inputs), the checkpoint can fall back to an unaligned snapshot that captures in-flight data from channels. This trades larger checkpoint size for faster completion.
Fields§
§enabled: boolWhether unaligned checkpoints are enabled.
alignment_timeout_threshold: DurationDuration after which aligned checkpoint falls back to unaligned.
If all barriers don’t arrive within this threshold after the first barrier, the checkpoint switches to unaligned mode. Default: 10s.
max_inflight_buffer_bytes: usizeMaximum bytes of in-flight data to buffer per checkpoint.
If the total in-flight data exceeds this, the checkpoint fails rather than consuming unbounded memory. Default: 256 MB.
force_unaligned: boolForce unaligned mode for all checkpoints (skip aligned attempt).
Useful for testing or when backpressure is known to be persistent.
Trait Implementations§
Source§impl Clone for UnalignedCheckpointConfig
impl Clone for UnalignedCheckpointConfig
Source§fn clone(&self) -> UnalignedCheckpointConfig
fn clone(&self) -> UnalignedCheckpointConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for UnalignedCheckpointConfig
impl Debug for UnalignedCheckpointConfig
Auto Trait Implementations§
impl Freeze for UnalignedCheckpointConfig
impl RefUnwindSafe for UnalignedCheckpointConfig
impl Send for UnalignedCheckpointConfig
impl Sync for UnalignedCheckpointConfig
impl Unpin for UnalignedCheckpointConfig
impl UnsafeUnpin for UnalignedCheckpointConfig
impl UnwindSafe for UnalignedCheckpointConfig
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.