#[non_exhaustive]pub enum StorageError {
InvalidRelativePath {
path: String,
reason: String,
backtrace: Box<Backtrace>,
},
NotFound {
path: String,
source: StorageBackendError,
backtrace: Backtrace,
},
AlreadyExists {
path: String,
source: StorageBackendError,
backtrace: Backtrace,
},
OtherIo {
path: String,
source: StorageBackendError,
backtrace: Backtrace,
},
CleanupFailed {
path: String,
operation_error: Box<StorageError>,
cleanup_error: Box<StorageError>,
},
}Expand description
Errors that can occur during storage operations.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
InvalidRelativePath
A table-relative storage path is invalid or non-canonical.
Fields
NotFound
The specified path was not found.
Fields
§
source: StorageBackendErrorUnderlying storage backend error that caused the failure.
AlreadyExists
The specified path already exists when creation was requested with create-new semantics.
Fields
§
source: StorageBackendErrorUnderlying storage backend error that indicates the existing resource.
OtherIo
An I/O error occurred in the storage backend.
Fields
§
source: StorageBackendErrorUnderlying storage backend error with platform-specific details.
CleanupFailed
A newly-created object could not be removed after its write failed.
Fields
§
operation_error: Box<StorageError>Original write or sync failure.
§
cleanup_error: Box<StorageError>Failure encountered while removing the newly-created object.
Trait Implementations§
Source§impl Debug for StorageError
impl Debug for StorageError
Source§impl Display for StorageError
impl Display for StorageError
Source§impl Error for StorageError
impl Error for StorageError
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 ErrorCompat for StorageError
impl ErrorCompat for StorageError
Source§fn iter_chain(&self) -> ChainCompat<'_, '_> ⓘwhere
Self: AsErrorSource,
fn iter_chain(&self) -> ChainCompat<'_, '_> ⓘwhere
Self: AsErrorSource,
Returns an iterator for traversing the chain of errors,
starting with the current error
and continuing with recursive calls to
Error::source. Read moreSource§impl From<StorageError> for CoverageSidecarError
impl From<StorageError> for CoverageSidecarError
Source§fn from(error: StorageError) -> Self
fn from(error: StorageError) -> Self
Converts to this type from the input type.
Source§impl From<StorageError> for AppendError
impl From<StorageError> for AppendError
Source§fn from(error: StorageError) -> Self
fn from(error: StorageError) -> Self
Converts to this type from the input type.
Source§impl From<StorageError> for VacuumError
impl From<StorageError> for VacuumError
Source§fn from(error: StorageError) -> Self
fn from(error: StorageError) -> Self
Converts to this type from the input type.
Source§impl From<StorageError> for SegmentError
impl From<StorageError> for SegmentError
Source§fn from(source: StorageError) -> Self
fn from(source: StorageError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl !Freeze for StorageError
impl !RefUnwindSafe for StorageError
impl !UnwindSafe for StorageError
impl Send for StorageError
impl Sync for StorageError
impl Unpin for StorageError
impl UnsafeUnpin for StorageError
Blanket Implementations§
Source§impl<T> AsErrorSource for Twhere
T: Error + 'static,
impl<T> AsErrorSource for Twhere
T: Error + 'static,
Source§fn as_error_source(&self) -> &(dyn Error + 'static)
fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
receivers.
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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 more