pub struct CompactionAdvisor {
pub thresholds: AdvisoryThresholds,
}Expand description
Analyses a StorageMetrics snapshot against a set of AdvisoryThresholds
and produces a CompactionAdvice describing what maintenance work should
be performed.
Fields§
§thresholds: AdvisoryThresholdsThe threshold configuration used for all advisory decisions.
Implementations§
Source§impl CompactionAdvisor
impl CompactionAdvisor
Sourcepub fn new(thresholds: AdvisoryThresholds) -> Self
pub fn new(thresholds: AdvisoryThresholds) -> Self
Creates a new advisor with the provided thresholds.
Sourcepub fn advise(&self, metrics: &StorageMetrics) -> CompactionAdvice
pub fn advise(&self, metrics: &StorageMetrics) -> CompactionAdvice
Analyses metrics and returns a CompactionAdvice describing any
recommended actions.
Sourcepub fn explain(&self, advice: &CompactionAdvice) -> Vec<String>
pub fn explain(&self, advice: &CompactionAdvice) -> Vec<String>
Returns one explanatory string per action describing what will be done and why.
Trait Implementations§
Source§impl Clone for CompactionAdvisor
impl Clone for CompactionAdvisor
Source§fn clone(&self) -> CompactionAdvisor
fn clone(&self) -> CompactionAdvisor
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 moreAuto Trait Implementations§
impl Freeze for CompactionAdvisor
impl RefUnwindSafe for CompactionAdvisor
impl Send for CompactionAdvisor
impl Sync for CompactionAdvisor
impl Unpin for CompactionAdvisor
impl UnsafeUnpin for CompactionAdvisor
impl UnwindSafe for CompactionAdvisor
Blanket Implementations§
impl<T> Allocation for T
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> 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