pub enum RetryStrategy {
NoRetry,
FixedDelay {
delay_ms: u64,
},
ExponentialBackoff {
initial_ms: u64,
multiplier: f64,
max_ms: u64,
},
LinearBackoff {
initial_ms: u64,
increment_ms: u64,
max_ms: u64,
},
Fibonacci {
initial_ms: u64,
max_ms: u64,
},
}Expand description
The back-off strategy that determines how long to wait between retry attempts.
Variants§
NoRetry
Do not retry — fail immediately after the first attempt.
FixedDelay
Wait a constant delay_ms milliseconds between every attempt.
ExponentialBackoff
Multiply the previous delay by multiplier each attempt, capped at
max_ms.
Fields
LinearBackoff
Increase the delay by increment_ms each attempt, capped at max_ms.
Fields
Fibonacci
Use the Fibonacci sequence as delays (F(1)=initial, F(2)=initial, …),
capped at max_ms.
Trait Implementations§
Source§impl Clone for RetryStrategy
impl Clone for RetryStrategy
Source§fn clone(&self) -> RetryStrategy
fn clone(&self) -> RetryStrategy
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RetryStrategy
impl Debug for RetryStrategy
Source§impl PartialEq for RetryStrategy
impl PartialEq for RetryStrategy
Source§fn eq(&self, other: &RetryStrategy) -> bool
fn eq(&self, other: &RetryStrategy) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for RetryStrategy
Auto Trait Implementations§
impl Freeze for RetryStrategy
impl RefUnwindSafe for RetryStrategy
impl Send for RetryStrategy
impl Sync for RetryStrategy
impl Unpin for RetryStrategy
impl UnsafeUnpin for RetryStrategy
impl UnwindSafe for RetryStrategy
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
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,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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>
Wrap the input message
T in a tonic::Request