Crate foyer_storage

Crate foyer_storage 

Source
Expand description

A disk cache engine that serves as the disk cache backend of foyer.

Structs§

AdmitAll
Admit all entries.
Block
A block is a logical partition of a device. It is used to manage the device’s storage space.
BlockEngineBuilder
Builder for the block-based disk cache engine.
BlockStatistics
Block statistics.
CombinedDeviceBuilder
Builder for a combined device that wraps multiple devices and allows access to their blocks.
EngineBuildContext
Context for building the disk cache engine.
EstimatedSize
A condition that checks if the estimated size is within a specified range.
EvictionInfo
Eviction related information for eviction picker to make decisions.
FifoPicker
A picker that pick block to eviction with a FIFO behavior.
FileDeviceBuilder
Builder for a file-based device that manages a single file or a raw block device.
FsDeviceBuilder
Builder for a filesystem-based device that manages files in a directory.
InvalidRatioPicker
Evict the block with the largest invalid data ratio.
IoHandle
A detached I/O handle that can be polled for completion.
NoopDeviceBuilder
Builder for a no-operation mock device.
NoopIoEngine
A mock I/O engine that does nothing.
NoopIoEngineBuilder
Builder for a no-operation mock I/O engine.
PartialDeviceBuilder
Builder for a partial device that wraps another device and allows access to only a subset of capacity.
PsyncIoEngine
The synchronous I/O engine that uses pread(2)/pwrite(2) and tokio thread pool for reading and writing.
PsyncIoEngineBuilder
Builder for synchronous I/O engine with pread(2)/pwrite(2).
RawFile
Raw os file resource.
RejectAll
Reject all entries.
Runtime
Runtime holds the runtime reference and non-cloneable handles to prevent handle usage after runtime shutdown.
Statistics
The statistics of the device.
StorageFilter
StorageFilter filters entries based on multiple conditions for admission and reinsertion.
Store
The disk cache engine that serves as the storage backend of foyer.
StoreBuilder
The builder of the disk cache.
Throttle
Throttle config for the device.
TokioRuntimeOptions
Tokio runtime configuration.
UringIoEngine
The io_uring based I/O engine.
UringIoEngineBuilder
Builder for io_uring based I/O engine.

Enums§

Compression
The compression algorithm of the disk cache.
Error
Disk cache error type.
IoError
I/O related error from foyer disk cache io module.
IopsCounter
Device iops counter.
Load
Load result.
RecoverMode
The recover mode of the disk cache.
RuntimeOptions
Options for the dedicated runtime.
StorageFilterResult
Filter result for admission pickers and reinsertion pickers.

Traits§

Device
Device trait.
DeviceBuilder
Device builder trait.
Engine
Disk cache engine trait.
EngineConfig
Disk cache engine builder trait.
EvictionPicker
The eviction picker for the disk cache.
IoEngine
I/O engine builder trait.
IoEngineBuilder
I/O engine builder trait.
StorageFilterCondition
Condition for StorageFilter.

Type Aliases§

IoResult
I/O related result type.
Result
Disk cache result type.