pub struct MemoryMappedStore {
pub enabled: bool,
pub kind: MemoryMappedKind,
pub path: Option<String>,
pub read_only: bool,
pub max_size_bytes: Option<u64>,
pub max_groups: Option<u32>,
pub prefix: Option<String>,
}Expand description
Memory-mapped store configuration.
Unlike the key-value, queue, and relational stores, the memory-mapped store works with binary keys and binary values. Each “group” maps to a named sub-database inside the LMDB environment so multiple logical tables can share one mmap.
Fields§
§enabled: boolWhether the store is enabled.
kind: MemoryMappedKindBackend implementation.
path: Option<String>Filesystem path (LMDB only). For LMDB this is a directory path that will
hold data.mdb and lock.mdb. Ignored for Memory and Sink.
read_only: boolOpen the store read-only. Required when multiple processes need to read the same LMDB environment concurrently.
max_size_bytes: Option<u64>Upper bound on the mmap’d file size (LMDB only). LMDB requires the map size
to be set up front; reads use it as virtual-address-space allocation, not as a
disk allocation, so being generous is cheap. Defaults to 16 GiB if None.
max_groups: Option<u32>Maximum number of named sub-databases (groups) inside one LMDB env. Defaults to 64.
prefix: Option<String>Optional prefix prepended to all group names.
Trait Implementations§
Source§impl Clone for MemoryMappedStore
impl Clone for MemoryMappedStore
Source§fn clone(&self) -> MemoryMappedStore
fn clone(&self) -> MemoryMappedStore
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more