#[non_exhaustive]pub enum FailureCategory {
Show 15 variants
InvalidDefinition,
DuplicateExecution,
IllegalTransition,
TransientInfrastructure,
PermanentInfrastructure,
UserComponent,
Cancelled,
Serialization,
Invariant,
OptimisticConflict,
Timeout,
UnsupportedCapability,
UnknownCommit,
ShutdownIncomplete,
StaleRecovered,
}Expand description
A stable framework category for a redacted failure.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
InvalidDefinition
Invalid job definition or launch configuration.
DuplicateExecution
Duplicate, completed, or non-restartable execution.
IllegalTransition
Illegal or conflicting lifecycle transition.
TransientInfrastructure
A transient repository or infrastructure failure.
PermanentInfrastructure
A permanent repository or infrastructure failure.
UserComponent
A user reader, processor, writer, tasklet, or listener failure.
Cancelled
Cancellation, stop, or deadline expiry.
Serialization
Serialization or version incompatibility.
Invariant
A framework invariant was violated.
OptimisticConflict
An optimistic version check lost to a concurrent writer.
Timeout
A bounded operation exceeded its deadline.
UnsupportedCapability
The selected resource cannot provide a required capability.
UnknownCommit
A commit outcome is unknown and must never be guessed.
ShutdownIncomplete
A bounded shutdown could not join or resolve every owned child.
StaleRecovered
An execution was resolved from stale-ownership evidence.
Implementations§
Source§impl FailureCategory
impl FailureCategory
Sourcepub const fn as_str(self) -> &'static str
pub const fn as_str(self) -> &'static str
Returns the stable, low-cardinality manifest and telemetry name.
Sourcepub const fn is_policy_eligible(self) -> bool
pub const fn is_policy_eligible(self) -> bool
Returns whether a fault policy may retry or skip this category.
Definition, lifecycle, cancellation, serialization, invariant, capability, and unknown-commit failures always fail closed.
Sourcepub const fn durable_code(self) -> &'static str
pub const fn durable_code(self) -> &'static str
Returns the stable code durable adapters persist for this category.
The spelling is durable data: an existing code is never renamed, and a new variant only ever adds a code.
Sourcepub fn from_durable_code(value: &str) -> Option<FailureCategory>
pub fn from_durable_code(value: &str) -> Option<FailureCategory>
Returns the category for one durable code, rejecting unknown values.
Trait Implementations§
Source§impl Clone for FailureCategory
impl Clone for FailureCategory
Source§fn clone(&self) -> FailureCategory
fn clone(&self) -> FailureCategory
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for FailureCategory
Source§impl Debug for FailureCategory
impl Debug for FailureCategory
impl Eq for FailureCategory
Source§impl Hash for FailureCategory
impl Hash for FailureCategory
Source§impl Ord for FailureCategory
impl Ord for FailureCategory
Source§fn cmp(&self, other: &FailureCategory) -> Ordering
fn cmp(&self, other: &FailureCategory) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for FailureCategory
impl PartialEq for FailureCategory
Source§impl PartialOrd for FailureCategory
impl PartialOrd for FailureCategory
impl StructuralPartialEq for FailureCategory
Auto Trait Implementations§
impl Freeze for FailureCategory
impl RefUnwindSafe for FailureCategory
impl Send for FailureCategory
impl Sync for FailureCategory
impl Unpin for FailureCategory
impl UnsafeUnpin for FailureCategory
impl UnwindSafe for FailureCategory
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
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
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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> ⓘ
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