pub enum ReplacementFailure<Worker, Plan>where
Worker: Behavior,
Plan: ActivationPlan,
BehaviorAddr<Worker>: EndpointAddress,
StableProxy<Worker, Plan>: Behavior<Protocol = Worker::Protocol>,{
ProxyRefused {
worker: Worker,
activation: Plan,
phase: ProxyPhase,
},
WorkerAttemptsExhausted {
worker: Worker,
activation: Plan,
},
WorkerCreationRejected {
rejection: WorkerCreationRejection<Worker>,
activation: Plan,
stopped: Option<ChildStopped<BehaviorAddr<Worker>>>,
},
WorkerUnavailable {
drain: ProxyDrain<Worker, Plan>,
},
}Expand description
Exact replacement failure values not retained by the next service state.
Variants§
ProxyRefused
StableProxy refused the input without changing its current worker.
WorkerAttemptsExhausted
StableProxy returned the worker after exhausting fresh attempt IDs.
WorkerCreationRejected
Successor creation failed before a worker was committed.
Fields
§
rejection: WorkerCreationRejection<Worker>§
activation: Plan§
stopped: Option<ChildStopped<BehaviorAddr<Worker>>>A committed successor could not become available and was drained.
Auto Trait Implementations§
impl<Worker, Plan> Freeze for ReplacementFailure<Worker, Plan>where
<<Worker as Behavior>::Protocol as Protocol>::Addr: Sized + Freeze,
Worker: Freeze,
Plan: Freeze,
<Worker as Behavior>::Error: Freeze,
<Plan as ActivationPlan>::Rejection: Freeze,
<Plan as ActivationPlan>::Ready: Freeze,
<<<Worker as Behavior>::Protocol as Protocol>::Addr as EndpointAddress>::Established<<Worker as Behavior>::Protocol>: Freeze,
<Worker as Behavior>::Sends: Freeze,
<Worker as Behavior>::Ph: Freeze,
impl<Worker, Plan> RefUnwindSafe for ReplacementFailure<Worker, Plan>where
<<Worker as Behavior>::Protocol as Protocol>::Addr: Sized + RefUnwindSafe,
Worker: RefUnwindSafe,
Plan: RefUnwindSafe,
<Worker as Behavior>::Error: RefUnwindSafe,
<Plan as ActivationPlan>::Rejection: RefUnwindSafe,
<Plan as ActivationPlan>::Ready: RefUnwindSafe,
<<<Worker as Behavior>::Protocol as Protocol>::Addr as EndpointAddress>::Established<<Worker as Behavior>::Protocol>: RefUnwindSafe,
<Worker as Behavior>::Sends: RefUnwindSafe,
<Worker as Behavior>::Ph: RefUnwindSafe,
<<Worker as Behavior>::Birth as BirthMode>::Child: RefUnwindSafe,
impl<Worker, Plan> Send for ReplacementFailure<Worker, Plan>where
<<Worker as Behavior>::Protocol as Protocol>::Addr: Sized + Send,
Worker: Send,
<Worker as Behavior>::Error: Send,
<<<Worker as Behavior>::Protocol as Protocol>::Addr as EndpointAddress>::Established<<Worker as Behavior>::Protocol>: Send,
<Worker as Behavior>::Sends: Send,
<Worker as Behavior>::Ph: Send,
<<Worker as Behavior>::Birth as BirthMode>::Child: Send,
impl<Worker, Plan> Sync for ReplacementFailure<Worker, Plan>where
<<Worker as Behavior>::Protocol as Protocol>::Addr: Sized + Sync,
Worker: Sync,
Plan: Sync,
<Worker as Behavior>::Error: Sync,
<Plan as ActivationPlan>::Rejection: Sync,
<Plan as ActivationPlan>::Ready: Sync,
<<<Worker as Behavior>::Protocol as Protocol>::Addr as EndpointAddress>::Established<<Worker as Behavior>::Protocol>: Sync,
<Worker as Behavior>::Sends: Sync,
<Worker as Behavior>::Ph: Sync,
<<Worker as Behavior>::Birth as BirthMode>::Child: Sync,
impl<Worker, Plan> Unpin for ReplacementFailure<Worker, Plan>where
<<Worker as Behavior>::Protocol as Protocol>::Addr: Sized + Unpin,
Worker: Unpin,
Plan: Unpin,
<Worker as Behavior>::Error: Unpin,
<Plan as ActivationPlan>::Rejection: Unpin,
<Plan as ActivationPlan>::Ready: Unpin,
<<<Worker as Behavior>::Protocol as Protocol>::Addr as EndpointAddress>::Established<<Worker as Behavior>::Protocol>: Unpin,
<Worker as Behavior>::Sends: Unpin,
<Worker as Behavior>::Ph: Unpin,
<<Worker as Behavior>::Birth as BirthMode>::Child: Unpin,
impl<Worker, Plan> UnsafeUnpin for ReplacementFailure<Worker, Plan>where
<<Worker as Behavior>::Protocol as Protocol>::Addr: Sized + UnsafeUnpin,
Worker: UnsafeUnpin,
Plan: UnsafeUnpin,
<Worker as Behavior>::Error: UnsafeUnpin,
<Plan as ActivationPlan>::Rejection: UnsafeUnpin,
<Plan as ActivationPlan>::Ready: UnsafeUnpin,
<<<Worker as Behavior>::Protocol as Protocol>::Addr as EndpointAddress>::Established<<Worker as Behavior>::Protocol>: UnsafeUnpin,
<Worker as Behavior>::Sends: UnsafeUnpin,
<Worker as Behavior>::Ph: UnsafeUnpin,
impl<Worker, Plan> UnwindSafe for ReplacementFailure<Worker, Plan>where
<<Worker as Behavior>::Protocol as Protocol>::Addr: Sized + UnwindSafe,
Worker: UnwindSafe,
Plan: UnwindSafe,
<Worker as Behavior>::Error: UnwindSafe,
<Plan as ActivationPlan>::Rejection: UnwindSafe,
<Plan as ActivationPlan>::Ready: UnwindSafe,
<<<Worker as Behavior>::Protocol as Protocol>::Addr as EndpointAddress>::Established<<Worker as Behavior>::Protocol>: UnwindSafe,
<Worker as Behavior>::Sends: UnwindSafe,
<Worker as Behavior>::Ph: UnwindSafe,
<<Worker as Behavior>::Birth as BirthMode>::Child: UnwindSafe,
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