pub enum RecoveryDisposition {
Rerunnable,
OwnerBound,
ExternallyOwned,
}Expand description
Producer-declared contract stating what recovery may do with a process row after owner loss. Required at registration and applied mechanically by the sweep; never inferred at runtime. See ADR 0019.
There is deliberately no Default and no serde default: a producer that
forgets to declare a disposition must fail to compile rather than silently
inherit re-execution.
Variants§
Rerunnable
Another owner may re-execute the work — the contract for journaled, idempotent inputs (engine rows, session-turn rows).
OwnerBound
The contract binds at first start: before any owner has begun execution any worker may claim the row; once execution has started, no other owner may ever re-execute it — abandonment is the only recovery.
ExternallyOwned
Lash never executes the row at all. Closure comes from an external actor
calling complete_process, or from a reconciled Abandon Request.
Trait Implementations§
Source§impl Clone for RecoveryDisposition
impl Clone for RecoveryDisposition
Source§fn clone(&self) -> RecoveryDisposition
fn clone(&self) -> RecoveryDisposition
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 RecoveryDisposition
Source§impl Debug for RecoveryDisposition
impl Debug for RecoveryDisposition
Source§impl<'de> Deserialize<'de> for RecoveryDisposition
impl<'de> Deserialize<'de> for RecoveryDisposition
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<RecoveryDisposition, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<RecoveryDisposition, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
impl Eq for RecoveryDisposition
Source§impl From<RecoveryDisposition> for RemoteRecoveryDisposition
impl From<RecoveryDisposition> for RemoteRecoveryDisposition
Source§fn from(value: RecoveryDisposition) -> RemoteRecoveryDisposition
fn from(value: RecoveryDisposition) -> RemoteRecoveryDisposition
Source§impl From<RemoteRecoveryDisposition> for RecoveryDisposition
impl From<RemoteRecoveryDisposition> for RecoveryDisposition
Source§fn from(value: RemoteRecoveryDisposition) -> RecoveryDisposition
fn from(value: RemoteRecoveryDisposition) -> RecoveryDisposition
Source§impl PartialEq for RecoveryDisposition
impl PartialEq for RecoveryDisposition
Source§fn eq(&self, other: &RecoveryDisposition) -> bool
fn eq(&self, other: &RecoveryDisposition) -> bool
self and other values to be equal, and is used by ==.