pub struct CheckpointDecisionStore { /* private fields */ }Expand description
Per-epoch commit marker store. Presence means committed; absence means the leader never reached the commit point (safe to abort).
Implementations§
Source§impl CheckpointDecisionStore
impl CheckpointDecisionStore
Sourcepub async fn record_committed(&self, epoch: u64) -> Result<bool, DecisionError>
pub async fn record_committed(&self, epoch: u64) -> Result<bool, DecisionError>
CAS-create the commit marker for epoch. Ok(true) means our
write landed; Ok(false) means someone else recorded first
(idempotent — retries after commit are cheap no-ops).
§Errors
Object-store I/O.
Sourcepub async fn is_committed(&self, epoch: u64) -> Result<bool, DecisionError>
pub async fn is_committed(&self, epoch: u64) -> Result<bool, DecisionError>
Sourcepub async fn prune_before(&self, before: u64) -> Result<(), DecisionError>
pub async fn prune_before(&self, before: u64) -> Result<(), DecisionError>
Delete commit markers for epoch < before. Called by the
checkpoint coordinator after its state-backend prune so
markers don’t accumulate one-per-checkpoint forever.
§Errors
Object-store I/O.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for CheckpointDecisionStore
impl !RefUnwindSafe for CheckpointDecisionStore
impl Send for CheckpointDecisionStore
impl Sync for CheckpointDecisionStore
impl Unpin for CheckpointDecisionStore
impl UnsafeUnpin for CheckpointDecisionStore
impl !UnwindSafe for CheckpointDecisionStore
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
Converts
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>
Converts
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 more§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.