pub struct RetryConfig {
pub max_retries: u32,
pub retry_delay_ms: u64,
pub use_backoff: bool,
}
Expand description
Configuration for retry behavior with support for exponential backoff.
The RetryConfig
allows fine-tuning of retry behavior for tasks that may
experience transient failures. It provides:
- Configurable maximum retry attempts
- Fixed or exponential backoff strategies
- Customizable base delay between retries
§Example
use dataflow_rs::engine::RetryConfig;
// Create config with exponential backoff
let config = RetryConfig {
max_retries: 5,
retry_delay_ms: 100,
use_backoff: true,
};
// First retry: 100ms * 2^0 = 100ms
// Second retry: 100ms * 2^1 = 200ms
// Third retry: 100ms * 2^2 = 400ms
Fields§
§max_retries: u32
Maximum number of retries (0 means no retries)
retry_delay_ms: u64
Base delay between retries in milliseconds
use_backoff: bool
Whether to use exponential backoff (doubles delay each retry)
Implementations§
Source§impl RetryConfig
impl RetryConfig
Trait Implementations§
Source§impl Clone for RetryConfig
impl Clone for RetryConfig
Source§fn clone(&self) -> RetryConfig
fn clone(&self) -> RetryConfig
Returns a duplicate of the value. Read more
1.0.0 · 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 RetryConfig
impl Debug for RetryConfig
Auto Trait Implementations§
impl Freeze for RetryConfig
impl RefUnwindSafe for RetryConfig
impl Send for RetryConfig
impl Sync for RetryConfig
impl Unpin for RetryConfig
impl UnwindSafe for RetryConfig
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