#[non_exhaustive]pub enum TransactionError {
Show 14 variants
TransactionAlreadyCommitted,
EmptyTipsNotAllowed,
InvalidTip {
tip_id: String,
},
EntryConstructionFailed {
reason: String,
},
EntrySigningFailed {
key_name: String,
reason: String,
},
SigningKeyNotFound {
key_name: String,
},
AuthenticationRequired,
NoAuthConfiguration,
CorruptedAuthConfiguration,
InsufficientPermissions,
SignatureVerificationFailed,
EntryValidationFailed,
StoreDeserializationFailed {
store: String,
reason: String,
},
BackendOperationFailed {
reason: String,
},
}Expand description
Errors that can occur during transactions
TransactionError represents failures specific to transactions that
span multiple modules and require coordinated error handling. These errors
typically occur during entry construction, commit operations, and cross-module
data staging.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
TransactionAlreadyCommitted
Transaction has already been committed and cannot be used again
EmptyTipsNotAllowed
Tips array cannot be empty when creating a transaction
InvalidTip
Invalid tip provided to transaction
EntryConstructionFailed
Entry construction failed during commit
EntrySigningFailed
Entry signing failed during commit
SigningKeyNotFound
Required signing key not found
AuthenticationRequired
Authentication is required but not configured
NoAuthConfiguration
Authentication configuration is missing
CorruptedAuthConfiguration
Authentication configuration exists but is corrupted or malformed
InsufficientPermissions
Insufficient permissions for the operation
SignatureVerificationFailed
Entry signature verification failed
EntryValidationFailed
Entry validation failed (signature, permissions, or configuration)
StoreDeserializationFailed
Store data deserialization failed
BackendOperationFailed
Backend operation failed during commit
Implementations§
Source§impl TransactionError
impl TransactionError
Sourcepub fn is_already_committed(&self) -> bool
pub fn is_already_committed(&self) -> bool
Check if this error indicates the operation was already committed
Sourcepub fn is_authentication_error(&self) -> bool
pub fn is_authentication_error(&self) -> bool
Check if this error is authentication-related
Sourcepub fn is_entry_error(&self) -> bool
pub fn is_entry_error(&self) -> bool
Check if this error is related to entry operations
Sourcepub fn is_store_error(&self) -> bool
pub fn is_store_error(&self) -> bool
Check if this error is related to store operations
Sourcepub fn is_backend_error(&self) -> bool
pub fn is_backend_error(&self) -> bool
Check if this error is related to backend operations
Sourcepub fn is_validation_error(&self) -> bool
pub fn is_validation_error(&self) -> bool
Check if this error is related to validation
Sourcepub fn store_name(&self) -> Option<&str>
pub fn store_name(&self) -> Option<&str>
Get the store name if this is a store-related error
Trait Implementations§
Source§impl Debug for TransactionError
impl Debug for TransactionError
Source§impl Display for TransactionError
impl Display for TransactionError
Source§impl Error for TransactionError
impl Error for TransactionError
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
Source§impl From<TransactionError> for Error
impl From<TransactionError> for Error
Source§fn from(err: TransactionError) -> Self
fn from(err: TransactionError) -> Self
Auto Trait Implementations§
impl Freeze for TransactionError
impl RefUnwindSafe for TransactionError
impl Send for TransactionError
impl Sync for TransactionError
impl Unpin for TransactionError
impl UnwindSafe for TransactionError
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> CompatExt for T
impl<T> CompatExt for 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§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.