pub struct MergedSubscriptionCheckpoint {
pub manifest: SubscriptionCheckpointManifest,
pub ranges: Vec<NodePartitionRange>,
}Expand description
Whole-cluster stream cut reconstructed from exact participant manifests.
Fields§
§manifest: SubscriptionCheckpointManifestCanonical checkpoint manifest exposed to committed readers.
ranges: Vec<NodePartitionRange>Exact newly committed range per output partition.
Implementations§
Source§impl MergedSubscriptionCheckpoint
impl MergedSubscriptionCheckpoint
Sourcepub fn validate_continuity(
&self,
predecessor: Option<&SubscriptionCheckpointManifest>,
) -> Result<(), SubscriptionContractError>
pub fn validate_continuity( &self, predecessor: Option<&SubscriptionCheckpointManifest>, ) -> Result<(), SubscriptionContractError>
Validate this cut’s starting frontiers against an explicitly loaded predecessor.
A missing predecessor is valid only for ranges beginning at sequence zero. A stream absent from the predecessor is a new generation and follows the same rule.
§Errors
Returns a distribution mismatch or the first partition sequence gap.
Trait Implementations§
Source§impl Clone for MergedSubscriptionCheckpoint
impl Clone for MergedSubscriptionCheckpoint
Source§fn clone(&self) -> MergedSubscriptionCheckpoint
fn clone(&self) -> MergedSubscriptionCheckpoint
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for MergedSubscriptionCheckpoint
impl Debug for MergedSubscriptionCheckpoint
impl Eq for MergedSubscriptionCheckpoint
impl StructuralPartialEq for MergedSubscriptionCheckpoint
Auto Trait Implementations§
impl Freeze for MergedSubscriptionCheckpoint
impl RefUnwindSafe for MergedSubscriptionCheckpoint
impl Send for MergedSubscriptionCheckpoint
impl Sync for MergedSubscriptionCheckpoint
impl Unpin for MergedSubscriptionCheckpoint
impl UnsafeUnpin for MergedSubscriptionCheckpoint
impl UnwindSafe for MergedSubscriptionCheckpoint
Blanket Implementations§
impl<T> Allocation for T
§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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].§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.