diff --git a/conduwuit-example.toml b/conduwuit-example.toml index 78136efb..30da80e6 100644 --- a/conduwuit-example.toml +++ b/conduwuit-example.toml @@ -170,6 +170,10 @@ # #statekeyshort_cache_capacity = varies by system +# This item is undocumented. Please contribute documentation for it. +# +#servernameevent_data_cache_capacity = varies by system + # This item is undocumented. Please contribute documentation for it. # #server_visibility_cache_capacity = varies by system diff --git a/src/core/config/mod.rs b/src/core/config/mod.rs index 1754581d..fafd3396 100644 --- a/src/core/config/mod.rs +++ b/src/core/config/mod.rs @@ -211,6 +211,10 @@ pub struct Config { #[serde(default = "default_statekeyshort_cache_capacity")] pub statekeyshort_cache_capacity: u32, + /// default: varies by system + #[serde(default = "default_servernameevent_data_cache_capacity")] + pub servernameevent_data_cache_capacity: u32, + /// default: varies by system #[serde(default = "default_server_visibility_cache_capacity")] pub server_visibility_cache_capacity: u32, @@ -2059,6 +2063,8 @@ fn default_shortstatekey_cache_capacity() -> u32 { parallelism_scaled_u32(10_000 fn default_statekeyshort_cache_capacity() -> u32 { parallelism_scaled_u32(10_000).saturating_add(100_000) } +fn default_servernameevent_data_cache_capacity() -> u32 { parallelism_scaled_u32(100_000).saturating_add(500_000) } + fn default_server_visibility_cache_capacity() -> u32 { parallelism_scaled_u32(500) } fn default_user_visibility_cache_capacity() -> u32 { parallelism_scaled_u32(1000) } diff --git a/src/database/opts.rs b/src/database/opts.rs index 732f571f..28a39cca 100644 --- a/src/database/opts.rs +++ b/src/database/opts.rs @@ -170,6 +170,15 @@ pub(crate) fn cf_options( cache_size(cfg, cfg.statekeyshort_cache_capacity, 1024)?, ), + "servernameevent_data" => set_table_with_new_cache( + &mut opts, + cfg, + cache, + name, + cache_size(cfg, cfg.servernameevent_data_cache_capacity, 128)?, /* Raw average value size = 102, key + * size = 34 */ + ), + "eventid_outlierpdu" => { set_table_with_new_cache(&mut opts, cfg, cache, name, cache_size(cfg, cfg.pdu_cache_capacity, 1536)?); },