pub enum WorkloadProfile {
Interactive,
BulkImport,
ReadMostly,
ExtractMany,
}Expand description
High-level access pattern hint for cache and write behavior.
This value is a tuning hint, not a security setting. It does not change the
lockbox file format or the data returned by any API. The current
implementation uses the profile to decide how aggressively to retain staged
file pages during writes, which compression-frame target and zstd level to
use for bulk imports, and whether decoded compression frames may be retained
during repeated read/extract workloads; decoded-page cache capacity is still
controlled by LockboxOptions::cache_limit.
Variants§
Interactive
Balanced defaults for interactive CLI/API use.
Use this for normal applications that mix reads, writes, listing, and occasional commits. Small files may be kept in staging memory and packed together before commit so repeated edits can be compact and efficient. This is the default profile.
BulkImport
Prefer bounded memory during large imports.
Use this when adding many files or very large batches where predictable memory use matters more than post-import packing. Small-file staging is flushed incrementally into larger compression frames and file pages written during import are discarded from the decoded-page cache after they are flushed. Pending staged data may also be flushed before delete, rename, or symlink operations that touch the same path. This reduces peak memory while still allowing archive-style imports to gain compression from adjacent small files. Compression frames use a stronger zstd level than interactive writes.
ReadMostly
Favor repeated reads from an existing lockbox.
Use this when the lockbox is mostly opened for listing, stat, range reads, or repeated file extraction with few mutations. Decoded compression frames may be cached in memory so multiple slices from the same frame do not require repeated reassembly, digest verification, and decompression.
ExtractMany
Favor extracting many records in sequence.
Use this when streaming many files out of a lockbox, such as bulk restore or export flows. Decoded compression frames may be cached in memory for the duration of the handle, bounded by an internal limit, so adjacent files packed into the same frame can be extracted without repeated decompression.
Trait Implementations§
Source§impl Clone for WorkloadProfile
impl Clone for WorkloadProfile
Source§fn clone(&self) -> WorkloadProfile
fn clone(&self) -> WorkloadProfile
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more