SstFileManager

Struct SstFileManager 

Source
pub struct SstFileManager(/* private fields */);

Implementations§

Source§

impl SstFileManager

Source

pub fn new() -> Self

Creates a new SstFileManager using the default Env.

SstFileManager tracks and controls total SST file space usage, enabling applications to cap disk utilization and throttle deletions. see docs for more details.

Source

pub fn set_max_allowed_space_usage(&self, bytes: u64)

Sets the maximum allowed total SST file size in bytes.

Source

pub fn set_compaction_buffer_size(&self, bytes: u64)

Sets the compaction buffer size in bytes used by the manager for space accounting.

Source

pub fn is_max_allowed_space_reached(&self) -> bool

Returns true if the total SST file size has reached or exceeded the configured limit.

Source

pub fn is_max_allowed_space_reached_including_compactions(&self) -> bool

Returns true if the space limit is reached, including compaction output under accounting.

Source

pub fn get_total_size(&self) -> u64

Returns the total size of SST files tracked by this manager in bytes.

Source

pub fn get_delete_rate_bytes_per_second(&self) -> i64

Returns the configured file deletion rate in bytes per second. Negative means unlimited.

Source

pub fn set_delete_rate_bytes_per_second(&self, rate: i64)

Sets the file deletion rate in bytes per second. Use a negative value to disable limiting.

Source

pub fn get_max_trash_db_ratio(&self) -> f64

Returns the maximum trash-to-DB size ratio used for trash space control.

Source

pub fn set_max_trash_db_ratio(&self, ratio: f64)

Sets the maximum trash-to-DB size ratio used for trash space control.

Source

pub fn get_total_trash_size(&self) -> u64

Returns the total trash size tracked by this manager in bytes.

Trait Implementations§

Source§

impl Clone for SstFileManager

Source§

fn clone(&self) -> SstFileManager

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Default for SstFileManager

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.