pub struct RetryImportSourceRequest {
pub client_operation_id: String,
pub original_operation: Option<RecordRef>,
pub expected_operation_version: Vec<u8>,
pub logical_job_id: Vec<u8>,
pub active_delegation_digest: Vec<u8>,
pub expected_authority_epoch: u64,
}Expand description
Retry an incomplete terminal FAILED/CANCELED physical attempt into its original Thread. The original operation remains immutable; this command creates a new operation and never creates a second Spool or Thread genesis. Allocate a fresh host-generated physical UUID, distinct from ALL prior attempts and independent of client_operation_id. Return receipt.pending_operation for it under this request’s ID. Persist allocation, retry_of/superseded_by links and the exact receipt together; exact frozen replay returns that receipt. Changed bytes under the same ID -> OPERATION_ID_REUSED, before current CAS checks. Bind the writer-only job-state eligible target, destination/job/lineage, operation CAS and active authority in one admission transaction. CONNECTED requires caller ownership of the exact retained connection, current exact grants and selected-commit availability. Bind subsequent fetches to that authorized attempt; never select credentials from the old initiator. Public-git permits any current writer subject to signed authority/all checks.
Fields§
§client_operation_id: String§original_operation: Option<RecordRef>§expected_operation_version: Vec<u8>§logical_job_id: Vec<u8>Resolves retry_original_operation to this ORIGINAL logical job, not the new physical operation UUID. Current same-key retry needs no new signature; Expired authority is terminal: import remaining work as a NEW logical job. Retry uses a NEW request ID and the sole active delegation digest/epoch. Explicitly cancelled/revoked jobs NEVER revive.
active_delegation_digest: Vec<u8>Trait Implementations§
Source§impl Clone for RetryImportSourceRequest
impl Clone for RetryImportSourceRequest
Source§fn clone(&self) -> RetryImportSourceRequest
fn clone(&self) -> RetryImportSourceRequest
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RetryImportSourceRequest
impl Debug for RetryImportSourceRequest
Source§impl Default for RetryImportSourceRequest
impl Default for RetryImportSourceRequest
Source§fn default() -> RetryImportSourceRequest
fn default() -> RetryImportSourceRequest
impl Eq for RetryImportSourceRequest
Source§impl Hash for RetryImportSourceRequest
impl Hash for RetryImportSourceRequest
Source§impl Message for RetryImportSourceRequest
impl Message for RetryImportSourceRequest
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.Source§impl PartialEq for RetryImportSourceRequest
impl PartialEq for RetryImportSourceRequest
impl StructuralPartialEq for RetryImportSourceRequest
Auto Trait Implementations§
impl Freeze for RetryImportSourceRequest
impl RefUnwindSafe for RetryImportSourceRequest
impl Send for RetryImportSourceRequest
impl Sync for RetryImportSourceRequest
impl Unpin for RetryImportSourceRequest
impl UnsafeUnpin for RetryImportSourceRequest
impl UnwindSafe for RetryImportSourceRequest
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<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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<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<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