moltendb_core/engine/
config.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Serialize, Deserialize)]
4pub struct DbConfig {
5 pub path: String,
7 pub tiered_mode: bool,
9 pub sync_mode: bool,
11 pub hot_threshold: usize,
13 pub rate_limit_requests: u32,
15 pub rate_limit_window: u64,
17 pub max_body_size: usize,
19 pub max_keys_per_request: usize,
21 #[serde(skip)]
23 pub encryption_key: Option<[u8; 32]>,
24 pub post_backup_script: Option<String>,
26}
27
28impl Default for DbConfig {
29 fn default() -> Self {
30 Self {
31 path: "molten.db".to_string(),
32 tiered_mode: false,
33 sync_mode: false,
34 hot_threshold: 50000,
35 rate_limit_requests: 1000,
36 rate_limit_window: 60,
37 max_body_size: 10 * 1024 * 1024,
38 max_keys_per_request: 1000,
39 encryption_key: None,
40 post_backup_script: None,
41 }
42 }
43}