#[non_exhaustive]pub enum StorageStatus {
Healthy,
FullCompactionAvailable,
TightCompactionAvailable,
ReadOnlyOutOfSpace,
CompactionInProgress,
}Expand description
Coarse storage state of a tree.
With storage admission gating off (no configured quota and a backend that
cannot report free space) a tree reports Self::Healthy or, mid-run,
Self::CompactionInProgress. Once gating is active (bounded capacity), an
idle tree instead reports compaction availability:
Self::FullCompactionAvailable when a full compaction has working room,
Self::TightCompactionAvailable when only the opt-in tight-space mode
would fit, and Self::ReadOnlyOutOfSpace when the write gate is closed
(this takes precedence over a concurrent compaction).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Healthy
Normal operation: writes and a full compaction are available.
FullCompactionAvailable
Enough free space for a normal (full) compaction.
TightCompactionAvailable
Not enough space for a full compaction, but the opt-in tight-space (incremental-reclaim) compaction mode can still run.
ReadOnlyOutOfSpace
Out of space: the tree is read-only until space is freed or the quota is raised.
CompactionInProgress
A compaction is currently running.
Trait Implementations§
Source§impl Clone for StorageStatus
impl Clone for StorageStatus
Source§fn clone(&self) -> StorageStatus
fn clone(&self) -> StorageStatus
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for StorageStatus
Source§impl Debug for StorageStatus
impl Debug for StorageStatus
impl Eq for StorageStatus
Source§impl Hash for StorageStatus
impl Hash for StorageStatus
Source§impl PartialEq for StorageStatus
impl PartialEq for StorageStatus
Source§fn eq(&self, other: &StorageStatus) -> bool
fn eq(&self, other: &StorageStatus) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for StorageStatus
Auto Trait Implementations§
impl Freeze for StorageStatus
impl RefUnwindSafe for StorageStatus
impl Send for StorageStatus
impl Sync for StorageStatus
impl Unpin for StorageStatus
impl UnsafeUnpin for StorageStatus
impl UnwindSafe for StorageStatus
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
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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>
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>
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