surrealdb_core/
options.rs1use std::time::Duration;
2
3#[derive(Clone, Copy, Debug)]
8pub struct EngineOptions {
9 pub node_membership_refresh_interval: Duration,
11 pub node_membership_check_interval: Duration,
13 pub node_membership_cleanup_interval: Duration,
15 pub changefeed_gc_interval: Duration,
17 pub index_compaction_interval: Duration,
26 pub event_processing_interval: Duration,
30}
31
32impl Default for EngineOptions {
33 fn default() -> Self {
34 Self {
35 node_membership_refresh_interval: Duration::from_secs(3),
36 node_membership_check_interval: Duration::from_secs(15),
37 node_membership_cleanup_interval: Duration::from_secs(300),
38 changefeed_gc_interval: Duration::from_secs(30),
39 index_compaction_interval: Duration::from_secs(5),
40 event_processing_interval: Duration::from_secs(5),
41 }
42 }
43}
44
45impl EngineOptions {
46 pub fn with_node_membership_refresh_interval(mut self, interval: Duration) -> Self {
47 self.node_membership_refresh_interval = interval;
48 self
49 }
50 pub fn with_node_membership_check_interval(mut self, interval: Duration) -> Self {
51 self.node_membership_check_interval = interval;
52 self
53 }
54 pub fn with_node_membership_cleanup_interval(mut self, interval: Duration) -> Self {
55 self.node_membership_cleanup_interval = interval;
56 self
57 }
58 pub fn with_changefeed_gc_interval(mut self, interval: Duration) -> Self {
59 self.changefeed_gc_interval = interval;
60 self
61 }
62
63 pub fn with_index_compaction_interval(mut self, interval: Duration) -> Self {
64 self.index_compaction_interval = interval;
65 self
66 }
67
68 pub fn with_event_processing_interval(mut self, interval: Duration) -> Self {
69 self.event_processing_interval = interval;
70 self
71 }
72}