#[non_exhaustive]pub enum ExecutionError {
RevisionConflict(RevisionConflict),
Rejected(DomainRejection),
Store(StoreError),
OutcomeUnknown(UnknownOutcome),
IdempotencyMismatch {
command_id: CommandId,
},
ScopeViolation,
Timeout,
Erasure(ErasureError),
Other {
code: String,
},
}Expand description
Errors raised while executing a command batch.
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.
RevisionConflict(RevisionConflict)
The expected revision was stale.
Rejected(DomainRejection)
The domain refused the command.
Store(StoreError)
Persistence failed.
OutcomeUnknown(UnknownOutcome)
An external effect was attempted and its outcome is unknown (I15).
IdempotencyMismatch
The idempotency key was seen before with a different command payload.
ScopeViolation
The batch mixed cases while the scope required a single case.
Timeout
Execution exceeded its time budget; a commit may have happened.
Erasure(ErasureError)
The erased boundary could not convert a command, event or state.
Other
Executor-specific failure identified by a stable code.
Trait Implementations§
Source§impl Clone for ExecutionError
impl Clone for ExecutionError
Source§impl Debug for ExecutionError
impl Debug for ExecutionError
Source§impl<'de> Deserialize<'de> for ExecutionError
impl<'de> Deserialize<'de> for ExecutionError
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for ExecutionError
impl Display for ExecutionError
impl Eq for ExecutionError
Source§impl Error for ExecutionError
impl Error for ExecutionError
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 ErrorClassification for ExecutionError
impl ErrorClassification for ExecutionError
Source§fn effect_may_have_happened(&self) -> bool
fn effect_may_have_happened(&self) -> bool
May a side effect have happened despite the error?
Source§fn user_message_key(&self) -> &'static str
fn user_message_key(&self) -> &'static str
Key of a user-safe message in the application’s copy catalog.
Source§fn severity(&self) -> ErrorSeverity
fn severity(&self) -> ErrorSeverity
Operational severity.
Source§fn reconciliation_required(&self) -> bool
fn reconciliation_required(&self) -> bool
Must a reconciliation job run before the case is trusted again?
Source§impl From<ErasureError> for ExecutionError
impl From<ErasureError> for ExecutionError
Source§fn from(value: ErasureError) -> Self
fn from(value: ErasureError) -> Self
Converts to this type from the input type.
Source§impl From<ExecutionError> for OrchestratorError
impl From<ExecutionError> for OrchestratorError
Source§fn from(value: ExecutionError) -> Self
fn from(value: ExecutionError) -> Self
Converts to this type from the input type.
Source§impl PartialEq for ExecutionError
impl PartialEq for ExecutionError
Source§impl Serialize for ExecutionError
impl Serialize for ExecutionError
impl StructuralPartialEq for ExecutionError
Auto Trait Implementations§
impl Freeze for ExecutionError
impl RefUnwindSafe for ExecutionError
impl Send for ExecutionError
impl Sync for ExecutionError
impl Unpin for ExecutionError
impl UnsafeUnpin for ExecutionError
impl UnwindSafe for ExecutionError
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.