pub struct FaultConfig {
pub open_rate: Option<Probability>,
pub read_rate: Option<Probability>,
pub write_rate: Option<WriteConfig>,
pub sync_rate: Option<Probability>,
pub resize_rate: Option<ResizeConfig>,
pub remove_rate: Option<Probability>,
pub scan_rate: Option<Probability>,
}Expand description
Configuration for deterministic storage fault injection.
Fields§
§open_rate: Option<Probability>Failure rate for open_versioned operations.
read_rate: Option<Probability>Failure rate for read_at operations.
write_rate: Option<WriteConfig>Failure and byte-retention configuration for write_at operations.
sync_rate: Option<Probability>Failure rate for sync operations.
resize_rate: Option<ResizeConfig>Failure and partial-failure configuration for resize operations.
remove_rate: Option<Probability>Failure rate for remove operations.
scan_rate: Option<Probability>Failure rate for scan operations.
Implementations§
Source§impl Config
impl Config
Sourcepub const fn open(self, rate: Probability) -> Self
pub const fn open(self, rate: Probability) -> Self
Set the open failure rate.
Sourcepub const fn read(self, rate: Probability) -> Self
pub const fn read(self, rate: Probability) -> Self
Set the read failure rate.
Sourcepub const fn write(self, config: WriteConfig) -> Self
pub const fn write(self, config: WriteConfig) -> Self
Set the write fault configuration.
Sourcepub const fn sync(self, rate: Probability) -> Self
pub const fn sync(self, rate: Probability) -> Self
Set the sync failure rate.
Sourcepub const fn resize(self, config: ResizeConfig) -> Self
pub const fn resize(self, config: ResizeConfig) -> Self
Set the resize fault configuration.
Sourcepub const fn remove(self, rate: Probability) -> Self
pub const fn remove(self, rate: Probability) -> Self
Set the remove failure rate.
Sourcepub const fn scan(self, rate: Probability) -> Self
pub const fn scan(self, rate: Probability) -> Self
Set the scan failure rate.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnsafeUnpin for Config
impl UnwindSafe for Config
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,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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 more