[−][src]Struct ipfs_sqlite_block_store::async_block_store::GcConfig
Configuration for the gc loop
This is done as a config struct since we might have additional parameters here in the future, such as limits at which to do a full gc.
Fields
interval: Duration
interval at which gc runs
note that this is implemented as delays between gcs, so it will not run exactly at this interval, but there will be some drift if gc takes long.
min_blocks: usize
minimum number of blocks to collect in any case
Using this parameter, it is possible to guarantee a minimum rate with which gc will be able to keep up. It is min_blocks / interval.
target_duration: Duration
The target maximum gc duration of a single gc.
This can not be guaranteed, since we guarantee to collect at least min_blocks
.
But as soon as this duration is exceeded, the incremental gc will stop doing additional
work.
Trait Implementations
impl Clone for GcConfig
[src]
impl Debug for GcConfig
[src]
impl Default for GcConfig
[src]
impl Eq for GcConfig
[src]
impl PartialEq<GcConfig> for GcConfig
[src]
impl StructuralEq for GcConfig
[src]
impl StructuralPartialEq for GcConfig
[src]
Auto Trait Implementations
impl RefUnwindSafe for GcConfig
impl Send for GcConfig
impl Sync for GcConfig
impl Unpin for GcConfig
impl UnwindSafe for GcConfig
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> References<RawCodec> for T
pub fn references<R, E>(
_c: RawCodec,
_r: &mut R,
_set: &mut E
) -> Result<(), Error> where
E: Extend<Cid<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>>>,
R: Read,
_c: RawCodec,
_r: &mut R,
_set: &mut E
) -> Result<(), Error> where
E: Extend<Cid<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>>>,
R: Read,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,