pub enum ProtocolError {
ComparatorMismatch {
expected: u32,
got: u32,
},
EpochMismatch {
expected: u64,
got: u64,
},
SchemaMismatch {
expected: SchemaFp,
got: SchemaFp,
},
Gap {
expected: u64,
got: u64,
},
}Expand description
A protocol violation a Subscriber surfaces. All but a duplicate are fatal to the
current subscription — the consumer must discard its tree and re-subscribe (the
sender re-hydrates under a new epoch).
Variants§
ComparatorMismatch
The sender’s comparator contract differs — reconstruction would silently corrupt.
EpochMismatch
A batch from a different (usually stale) subscription epoch.
SchemaMismatch
The batch (or advertised) schema fingerprint differs from the subscribed one.
Gap
A seq beyond the next expected ⇒ a batch was lost. Unrecoverable from deltas;
re-hydrate. (expected is the next seq the receiver wanted.)
Trait Implementations§
Source§impl Clone for ProtocolError
impl Clone for ProtocolError
Source§fn clone(&self) -> ProtocolError
fn clone(&self) -> ProtocolError
Returns a duplicate of the value. Read more
1.0.0 · 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 ProtocolError
impl Debug for ProtocolError
Source§impl PartialEq for ProtocolError
impl PartialEq for ProtocolError
impl Eq for ProtocolError
impl StructuralPartialEq for ProtocolError
Auto Trait Implementations§
impl Freeze for ProtocolError
impl RefUnwindSafe for ProtocolError
impl Send for ProtocolError
impl Sync for ProtocolError
impl Unpin for ProtocolError
impl UnsafeUnpin for ProtocolError
impl UnwindSafe for ProtocolError
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