pub enum ScanFilter {
All,
OnlyAbnormal,
OnlyAbnormalWithVerify,
OnlyAbnormalTest,
}Expand description
which accounts scan should load from disk
Variants§
All
Scan both in-memory and on-disk index
OnlyAbnormal
abnormal = ref_count != 1 or slot list.len() != 1 Scan only in-memory index and skip on-disk index
OnlyAbnormalWithVerify
Similar to `OnlyAbnormal but also check on-disk index to verify the entry on-disk is indeed normal.
OnlyAbnormalTest
Similar to `OnlyAbnormal but mark entries in memory as not found if they are normal This removes the possibility of any race conditions with index flushing and simulates the system running an uncached disk index where nothing ‘normal’ is ever held in the in memory index as far as callers are concerned. This could also be a correct/ideal future api to similarly provide consistency and remove race condition behavior.
Trait Implementations§
Source§impl Clone for ScanFilter
impl Clone for ScanFilter
Source§fn clone(&self) -> ScanFilter
fn clone(&self) -> ScanFilter
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 ScanFilter
impl Debug for ScanFilter
Source§impl Default for ScanFilter
impl Default for ScanFilter
Source§fn default() -> ScanFilter
fn default() -> ScanFilter
Returns the “default value” for a type. Read more
Source§impl PartialEq for ScanFilter
impl PartialEq for ScanFilter
impl Copy for ScanFilter
impl Eq for ScanFilter
impl StructuralPartialEq for ScanFilter
Auto Trait Implementations§
impl Freeze for ScanFilter
impl RefUnwindSafe for ScanFilter
impl Send for ScanFilter
impl Sync for ScanFilter
impl Unpin for ScanFilter
impl UnwindSafe for ScanFilter
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§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 more