pub enum OriginOutcome {
Available,
Unavailable,
}Expand description
The health of a single per-origin pull-through attempt, as seen by
the breaker. The engine maps each origin’s
run_with_retry_classified result onto exactly one of these.
Variants§
Available
The origin responded usefully — bytes committed, a definitive
NotFound (404), or a permanent per-object error (other 4xx,
decode/cap breach). The origin is reachable; the breaker treats
all of these as a success signal and resets the failure count.
The origin was unavailable — a transient failure that exhausted the retry budget (5xx storm, connect/timeout/reset). This is the only outcome that counts toward the trip threshold.
Trait Implementations§
Source§impl Clone for OriginOutcome
impl Clone for OriginOutcome
impl Copy for OriginOutcome
Source§impl Debug for OriginOutcome
impl Debug for OriginOutcome
impl Eq for OriginOutcome
Source§impl PartialEq for OriginOutcome
impl PartialEq for OriginOutcome
impl StructuralPartialEq for OriginOutcome
Auto Trait Implementations§
impl Freeze for OriginOutcome
impl RefUnwindSafe for OriginOutcome
impl Send for OriginOutcome
impl Sync for OriginOutcome
impl Unpin for OriginOutcome
impl UnsafeUnpin for OriginOutcome
impl UnwindSafe for OriginOutcome
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
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
Compare self to
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> ⓘ
Converts
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> ⓘ
Converts
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 moreCreates a shared type from an unshared type.