pub enum MvStoreError {
NotCommitted,
PreviousAlreadyCapped {
existing: u64,
},
PreviousCappedByInFlight,
NonMonotonicBegin {
prev: u64,
new: u64,
},
}Expand description
Errors returned by mutating MvStore operations. Read-side calls
(read, visible_at) don’t error.
Variants§
NotCommitted
push_committed got a version whose begin is an in-flight
TxId rather than a committed Timestamp.
PreviousAlreadyCapped
The previous latest version is already capped at a different timestamp. Either the caller is double-committing, or the commit path is racing with itself (which 11.4’s commit-validation loop is supposed to prevent).
PreviousCappedByInFlight
The previous latest’s end is set to an in-flight cap. v0
rejects rather than silently overwriting; 11.4’s commit
validation runs first so this shouldn’t fire in production.
NonMonotonicBegin
New version’s begin is not strictly greater than the
previous latest’s begin. The clock should always hand out
monotonically increasing timestamps; this is a corruption /
bug indicator.
Trait Implementations§
Source§impl Debug for MvStoreError
impl Debug for MvStoreError
Source§impl Display for MvStoreError
impl Display for MvStoreError
Source§impl Error for MvStoreError
impl Error for MvStoreError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl PartialEq for MvStoreError
impl PartialEq for MvStoreError
Source§fn eq(&self, other: &MvStoreError) -> bool
fn eq(&self, other: &MvStoreError) -> bool
self and other values to be equal, and is used by ==.