pub enum SnapshotError {
Body {
snapshot: SnapshotId,
error: Box<DbError>,
staged: Option<StagedDigest>,
},
Read(Error),
Format(Error),
Schema {
snapshot: u32,
database: u32,
},
KeyUnavailable {
audience: Audience,
key: KeyId,
},
Inconsistent(&'static str),
Unauthentic(CryptoError),
Unauthorized,
}Expand description
Snapshots or their gap writes could not be loaded into this database.
Variants§
Body
A selected snapshot’s plaintext failed while the reload transaction was reading it: the loader’s format, schema and merge checks, or reading the input itself.
Fields
snapshot: SnapshotIdThe supplied snapshot’s identity.
staged: Option<StagedDigest>The digest of its staged records as the failed read left them,
read back once it failed, to tell damage on this device from the
snapshot’s own (§19.1); None until then.
Read(Error)
Reading the plaintext supplied by sync failed.
Format(Error)
A frame or its merge state failed the format’s checks.
Schema
The snapshot needs a different application schema.
Fields
Authenticating another member’s write that the snapshot carries needs a key this device has not opened yet (§9.6, D9): loading waits for it.
Inconsistent(&'static str)
Individually valid records disagree with one another or the schema.
Unauthentic(CryptoError)
Another member’s write that the snapshot carries does not authenticate: its sealed header does not open with the store key its prefix names, or its header signature does not verify (D9).
Another member’s write that the snapshot carries names a device that, at the write’s read-through, did not belong to a member of every audience the write has a part of (D9).
Trait Implementations§
Source§impl Debug for SnapshotError
impl Debug for SnapshotError
Source§impl Display for SnapshotError
impl Display for SnapshotError
Source§impl Error for SnapshotError
impl Error for SnapshotError
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
Source§impl From<Error> for SnapshotError
impl From<Error> for SnapshotError
Source§fn from(source: Error) -> SnapshotError
fn from(source: Error) -> SnapshotError
Source§impl From<SnapshotError> for DbError
impl From<SnapshotError> for DbError
Source§fn from(source: SnapshotError) -> DbError
fn from(source: SnapshotError) -> DbError
Auto Trait Implementations§
impl Freeze for SnapshotError
impl !RefUnwindSafe for SnapshotError
impl Send for SnapshotError
impl Sync for SnapshotError
impl Unpin for SnapshotError
impl UnsafeUnpin for SnapshotError
impl !UnwindSafe for SnapshotError
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
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>
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 more