pub enum IngestResult<E> {
Complete(Operation<E>),
Retry(Header<E>, Option<Body>, Vec<u8>, u64),
Outdated(Operation<E>),
}Expand description
Operations can be ingested directly or need to be re-tried if they arrived out-of-order.
Variants§
Complete(Operation<E>)
Operation has been successfully validated and persisted.
Retry(Header<E>, Option<Body>, Vec<u8>, u64)
We’re missing previous operations before we can try validating the backlink of this operation.
The number indicates how many operations we are lacking before we can attempt validation again.
Outdated(Operation<E>)
Operation can be considered “outdated” as a “newer” operation in the log removed this operation (“pruning”) while we processed it.
Applications usually want to ignore these operations as the latest operation will hold all the state we need. Additionally we were also not able to correctly check its log integrity anymore.
Trait Implementations§
Auto Trait Implementations§
impl<E> Freeze for IngestResult<E>where
E: Freeze,
impl<E> RefUnwindSafe for IngestResult<E>where
E: RefUnwindSafe,
impl<E> Send for IngestResult<E>where
E: Send,
impl<E> Sync for IngestResult<E>where
E: Sync,
impl<E> Unpin for IngestResult<E>where
E: Unpin,
impl<E> UnwindSafe for IngestResult<E>where
E: UnwindSafe,
Blanket Implementations§
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