pub enum ShardKeyMode {
Hash,
Ordered,
}Expand description
Collection-level partitioning mode for shard/range ownership.
Per the glossary, “Hash mode is the default for uniform distribution;
ordered mode is declared when range locality and ordered scans matter more
than automatic hotspot resistance.” The mode is fixed per collection: every
range of a collection shares its mode, and an entry whose mode disagrees with
its collection’s declared mode is rejected
(CatalogError::ShardKeyModeMismatch).
Variants§
Hash
Uniform hash distribution — the default. Bounds are over hash tokens.
Ordered
Ordered key ranges, declared for range locality / ordered scans. Bounds are over the ordered shard key itself.
Trait Implementations§
Source§impl Clone for ShardKeyMode
impl Clone for ShardKeyMode
Source§fn clone(&self) -> ShardKeyMode
fn clone(&self) -> ShardKeyMode
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 moreimpl Copy for ShardKeyMode
Source§impl Debug for ShardKeyMode
impl Debug for ShardKeyMode
Source§impl Default for ShardKeyMode
impl Default for ShardKeyMode
Source§fn default() -> ShardKeyMode
fn default() -> ShardKeyMode
Returns the “default value” for a type. Read more
impl Eq for ShardKeyMode
Source§impl PartialEq for ShardKeyMode
impl PartialEq for ShardKeyMode
Source§fn eq(&self, other: &ShardKeyMode) -> bool
fn eq(&self, other: &ShardKeyMode) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for ShardKeyMode
Auto Trait Implementations§
impl Freeze for ShardKeyMode
impl RefUnwindSafe for ShardKeyMode
impl Send for ShardKeyMode
impl Sync for ShardKeyMode
impl Unpin for ShardKeyMode
impl UnsafeUnpin for ShardKeyMode
impl UnwindSafe for ShardKeyMode
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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,
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.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request