pub enum TokenCoverageError {
EmptyRack {
dc: String,
rack: String,
},
Overlap {
dc: String,
rack: String,
token: u32,
peer_a: u32,
peer_b: u32,
},
}Expand description
Error returned by validate_token_coverage.
Variants§
EmptyRack
A (dc, rack) pair contributes zero tokens to the ring.
Either the rack has no peers, or every peer in the rack
has an empty token list.
Overlap
Two peers in the same rack claim the same token value. The dispatcher’s binary search will pick whichever peer happened to sort first, which is non-deterministic across reloads if peer indices change.
Trait Implementations§
Source§impl Debug for TokenCoverageError
impl Debug for TokenCoverageError
Source§impl Display for TokenCoverageError
impl Display for TokenCoverageError
Source§impl Error for TokenCoverageError
impl Error for TokenCoverageError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl PartialEq for TokenCoverageError
impl PartialEq for TokenCoverageError
Source§fn eq(&self, other: &TokenCoverageError) -> bool
fn eq(&self, other: &TokenCoverageError) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Eq for TokenCoverageError
impl StructuralPartialEq for TokenCoverageError
Auto Trait Implementations§
impl Freeze for TokenCoverageError
impl RefUnwindSafe for TokenCoverageError
impl Send for TokenCoverageError
impl Sync for TokenCoverageError
impl Unpin for TokenCoverageError
impl UnsafeUnpin for TokenCoverageError
impl UnwindSafe for TokenCoverageError
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
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.