pub enum StopOutcome {
Stopped {
record: PidRecord,
fate: Result<NoteFate, String>,
waited: Duration,
pid_file_reconciled: Result<bool, String>,
},
AlreadyGone {
record: PidRecord,
fate: Result<NoteFate, String>,
pid_file_reconciled: Result<bool, String>,
},
StillDraining {
record: PidRecord,
waited: Duration,
},
}Expand description
How the stop ended when it was allowed to act.
Variants§
Stopped
The server was signalled and exited within the patience window. The death note’s account of the exit rides along.
Fields
fate: Result<NoteFate, String>What the death note records for it (the drain outcome lives
here; its absence is a state, not an error), or why the note
could not be read — a bookkeeping failure beside a server that
is PROVEN exited, carried as its own fact, never allowed to
destroy this outcome (see [exit_bookkeeping]).
AlreadyGone
The recorded process was already gone: nothing to signal. The file is reconciled away and the note consulted for what happened.
Fields
StillDraining
The server is still draining when the patience elapsed. Not a
failure and not a guess: the server owns its drain, and a second
stop is the operator’s escalation (the server treats a second
termination signal as “force immediate exit”).
Trait Implementations§
Source§impl Clone for StopOutcome
impl Clone for StopOutcome
Source§fn clone(&self) -> StopOutcome
fn clone(&self) -> StopOutcome
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for StopOutcome
impl RefUnwindSafe for StopOutcome
impl Send for StopOutcome
impl Sync for StopOutcome
impl Unpin for StopOutcome
impl UnsafeUnpin for StopOutcome
impl UnwindSafe for StopOutcome
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<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> IntoMaybeUndefined<T> for T
impl<T> IntoMaybeUndefined<T> for T
Source§fn into_maybe_undefined(self) -> MaybeUndefined<T>
fn into_maybe_undefined(self) -> MaybeUndefined<T>
Source§impl<T> IntoOption<T> for T
impl<T> IntoOption<T> for T
Source§fn into_option(self) -> Option<T>
fn into_option(self) -> Option<T>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request