pub enum PreconditionFailure {
Present {
collection: String,
key: String,
},
Missing {
collection: String,
key: String,
},
Version {
collection: String,
key: String,
expected: u64,
actual: u64,
},
Epoch {
collection: String,
key: String,
expected: u64,
actual: u64,
},
Lease {
collection: String,
key: String,
expected: String,
actual: Option<String>,
},
Fence {
collection: String,
key: String,
expected: String,
actual: String,
},
}Expand description
Which predicate failed, and what the authority actually holds.
Structured rather than a formatted string, because the caller has to tell a lost race from a broken deployment: the first is retried with fresh state, the second is not retried at all.
Variants§
Present
Required absent, but the record exists.
Missing
A predicate was given for a record that does not exist.
Version
Epoch
Lease
Fence
State named by a read basis changed after the basis was read.
The tokens are kept for diagnostics inside the authority but never serialized: a refusal says that the basis changed, not what it digests.
Implementations§
Trait Implementations§
Source§impl Clone for PreconditionFailure
impl Clone for PreconditionFailure
Source§fn clone(&self) -> PreconditionFailure
fn clone(&self) -> PreconditionFailure
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 PreconditionFailure
impl Debug for PreconditionFailure
Source§impl<'de> Deserialize<'de> for PreconditionFailure
impl<'de> Deserialize<'de> for PreconditionFailure
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<PreconditionFailure, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<PreconditionFailure, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for PreconditionFailure
impl Display for PreconditionFailure
Source§impl PartialEq for PreconditionFailure
impl PartialEq for PreconditionFailure
Source§impl Serialize for PreconditionFailure
impl Serialize for PreconditionFailure
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for PreconditionFailure
Auto Trait Implementations§
impl Freeze for PreconditionFailure
impl RefUnwindSafe for PreconditionFailure
impl Send for PreconditionFailure
impl Sync for PreconditionFailure
impl Unpin for PreconditionFailure
impl UnsafeUnpin for PreconditionFailure
impl UnwindSafe for PreconditionFailure
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