pub enum RemoteParticipantError {
StateUnavailable {
source: Option<SdkError>,
},
ResumeEncode(ClientResumeRecordEncodeError),
ResumeDecode(ClientResumeRecordDecodeError),
ResumeRestore(ClientResumeRestoreError),
Storage(SdkError),
Transport(SdkError),
InvalidInboundDirection,
ResponseAuthorityUnavailable,
}Expand description
Failure at the SDK participant state, codec, storage, or transport boundary.
Variants§
A prior commit could not be persisted, so no aggregate authority remains reachable.
source is the RETAINED cause: the exact SdkError the caller’s own
store returned at the seam that bricked the handle. It travels on the
error itself, so a caller who merely CAUGHT this value – through a ?,
across a channel, out of a join – can attribute the hold by matching a
typed value rather than parsing rendered text. It is also this error’s
source.
A None means the aggregate is unreachable for a reason that did not
originate in the store. That discrimination is why the field is an
Option and not an SdkError: there is no store failure to name, so
source reports None rather than
inventing a link, and the rendered message drops the durability clause it
would otherwise be asserting without evidence.
ResumeEncode(ClientResumeRecordEncodeError)
The protocol crate could not encode the current aggregate as canonical LPCR.
ResumeDecode(ClientResumeRecordDecodeError)
Persisted bytes were not a canonical LPCR record.
ResumeRestore(ClientResumeRestoreError)
Canonical facts violated a protocol restore invariant.
Storage(SdkError)
The caller-owned durable store rejected a canonical record.
The SdkError is exposed as this error’s source
so a caller can walk to the typed store failure instead of matching on
rendered text.
Transport(SdkError)
The real transport failed outside a typed fate-reporting operation.
The SdkError is exposed as this error’s source,
for the same reason as Storage.
InvalidInboundDirection
A client-to-server request appeared on the SDK receive side.
No live response correlation exists for a replay-specific input.
Trait Implementations§
Source§impl Debug for RemoteParticipantError
impl Debug for RemoteParticipantError
Source§impl Display for RemoteParticipantError
impl Display for RemoteParticipantError
Source§impl Error for RemoteParticipantError
impl Error for RemoteParticipantError
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
use the Display impl or to_string()