Skip to main content

tuwunel_database/map/
options.rs

1use std::sync::Arc;
2
3use rocksdb::{ReadOptions, ReadTier, WriteOptions};
4
5use crate::Engine;
6
7#[inline]
8pub(crate) fn cache_iter_options_default(engine: &Arc<Engine>) -> ReadOptions {
9	let mut options = iter_options_default(engine);
10	options.set_read_tier(ReadTier::BlockCache);
11	options.fill_cache(false);
12	options
13}
14
15#[inline]
16pub(crate) fn iter_options_default(engine: &Arc<Engine>) -> ReadOptions {
17	let mut options = read_options_default(engine);
18	options.set_background_purge_on_iterator_cleanup(true);
19	options
20}
21
22#[inline]
23pub(crate) fn cache_read_options_default(engine: &Arc<Engine>) -> ReadOptions {
24	let mut options = read_options_default(engine);
25	options.set_read_tier(ReadTier::BlockCache);
26	options.fill_cache(false);
27	options
28}
29
30#[inline]
31pub(crate) fn read_options_default(engine: &Arc<Engine>) -> ReadOptions {
32	let mut options = ReadOptions::default();
33	options.set_total_order_seek(true);
34
35	if !engine.checksums {
36		options.set_verify_checksums(false);
37	}
38
39	options
40}
41
42#[inline]
43pub(crate) fn write_options_default(_engine: &Arc<Engine>) -> WriteOptions {
44	WriteOptions::default()
45}