pub enum WriteTransactionReject {
Empty,
Unroutable {
collection: CollectionId,
key: Vec<u8>,
},
CrossRange {
writers: Vec<WriterParticipation>,
},
}Expand description
Why a write transaction could not be planned in the first multi-writer cut.
Variants§
Empty
The transaction named no targets — there is nothing to commit.
Unroutable
A targeted key resolves to no range of its collection; routing is stale or the collection is not yet placed. The caller must refresh its catalog.
CrossRange
The transaction’s keys span ranges owned by different writers. There is no atomic cross-writer commit path in this cut, so the transaction is rejected rather than committed partially. Carries every writer involved (in identity order) so the caller sees exactly which owners it straddled.
Fields
§
writers: Vec<WriterParticipation>Trait Implementations§
Source§impl Clone for WriteTransactionReject
impl Clone for WriteTransactionReject
Source§fn clone(&self) -> WriteTransactionReject
fn clone(&self) -> WriteTransactionReject
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 WriteTransactionReject
impl Debug for WriteTransactionReject
Source§impl Display for WriteTransactionReject
impl Display for WriteTransactionReject
impl Eq for WriteTransactionReject
Source§impl Error for WriteTransactionReject
impl Error for WriteTransactionReject
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 WriteTransactionReject
impl PartialEq for WriteTransactionReject
Source§fn eq(&self, other: &WriteTransactionReject) -> bool
fn eq(&self, other: &WriteTransactionReject) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for WriteTransactionReject
Auto Trait Implementations§
impl Freeze for WriteTransactionReject
impl RefUnwindSafe for WriteTransactionReject
impl Send for WriteTransactionReject
impl Sync for WriteTransactionReject
impl Unpin for WriteTransactionReject
impl UnsafeUnpin for WriteTransactionReject
impl UnwindSafe for WriteTransactionReject
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