diff --git a/src/api/client_server/sync.rs b/src/api/client_server/sync.rs index fb087489..933f7b58 100644 --- a/src/api/client_server/sync.rs +++ b/src/api/client_server/sync.rs @@ -494,6 +494,8 @@ async fn handle_left_room( async fn process_presence_updates( presence_updates: &mut HashMap, since: u64, syncing_user: &OwnedUserId, ) -> Result<()> { + use crate::service::presence::Presence; + // Take presence updates for (user_id, _, presence_bytes) in services().presence.presence_since(since) { if !services() @@ -504,7 +506,6 @@ async fn process_presence_updates( continue; } - use crate::service::presence::Presence; let presence_event = Presence::from_json_bytes_to_event(&presence_bytes, &user_id)?; match presence_updates.entry(user_id) { Entry::Vacant(slot) => { diff --git a/src/database/rocksdb/kvtree.rs b/src/database/rocksdb/kvtree.rs index 02a0f3bf..00d01f8e 100644 --- a/src/database/rocksdb/kvtree.rs +++ b/src/database/rocksdb/kvtree.rs @@ -23,13 +23,13 @@ impl KvTree for RocksDbEngineTree<'_> { } fn multi_get(&self, keys: &[&[u8]]) -> Result>>> { - let mut readoptions = rust_rocksdb::ReadOptions::default(); - readoptions.set_total_order_seek(true); - // Optimization can be `true` if key vector is pre-sorted **by the column // comparator**. const SORTED: bool = false; + let mut readoptions = rust_rocksdb::ReadOptions::default(); + readoptions.set_total_order_seek(true); + let mut ret: Vec>> = Vec::with_capacity(keys.len()); for res in self .db diff --git a/src/database/rocksdb/mod.rs b/src/database/rocksdb/mod.rs index 5198e6b7..28ce5072 100644 --- a/src/database/rocksdb/mod.rs +++ b/src/database/rocksdb/mod.rs @@ -261,8 +261,9 @@ impl KeyValueDatabaseEngine for Arc { impl Drop for Engine { fn drop(&mut self) { - debug!("Waiting for background tasks to finish..."); const BLOCKING: bool = true; + + debug!("Waiting for background tasks to finish..."); self.rocks.cancel_all_background_work(BLOCKING); debug!("Shutting down background threads"); diff --git a/src/database/rocksdb/opts.rs b/src/database/rocksdb/opts.rs index afed79a5..06c90a77 100644 --- a/src/database/rocksdb/opts.rs +++ b/src/database/rocksdb/opts.rs @@ -17,13 +17,14 @@ use super::{ /// columns, therefor columns should only be opened after passing this result /// through cf_options(). pub(crate) fn db_options(config: &Config, env: &mut Env, row_cache: &Cache, col_cache: &Cache) -> Options { + const MIN_PARALLELISM: usize = 2; + let mut opts = Options::default(); // Logging set_logging_defaults(&mut opts, config); // Processing - const MIN_PARALLELISM: usize = 2; let threads = if config.rocksdb_parallelism_threads == 0 { cmp::max(MIN_PARALLELISM, utils::available_parallelism()) } else { diff --git a/src/service/pusher/mod.rs b/src/service/pusher/mod.rs index 261d69dd..636ba4dd 100644 --- a/src/service/pusher/mod.rs +++ b/src/service/pusher/mod.rs @@ -49,12 +49,11 @@ impl Service { where T: OutgoingRequest + Debug, { - let dest = dest.replace(services().globals.notification_push_path(), ""); - - trace!("Push gateway destination: {dest}"); - const VERSIONS: [MatrixVersion; 1] = [MatrixVersion::V1_0]; + let dest = dest.replace(services().globals.notification_push_path(), ""); + trace!("Push gateway destination: {dest}"); + let http_request = request .try_into_http_request::(&dest, SendAccessToken::IfRequired(""), &VERSIONS) .map_err(|e| { diff --git a/src/service/sending/appservice.rs b/src/service/sending/appservice.rs index 4764f889..4df5b934 100644 --- a/src/service/sending/appservice.rs +++ b/src/service/sending/appservice.rs @@ -14,6 +14,8 @@ pub(crate) async fn send_request(registration: Registration, request: T) -> R where T: OutgoingRequest + Debug, { + const VERSIONS: [MatrixVersion; 1] = [MatrixVersion::V1_0]; + let Some(dest) = registration.url else { return Ok(None); }; @@ -21,9 +23,6 @@ where trace!("Appservice URL \"{dest}\", Appservice ID: {}", registration.id); let hs_token = registration.hs_token.as_str(); - - const VERSIONS: [MatrixVersion; 1] = [MatrixVersion::V1_0]; - let mut http_request = request .try_into_http_request::(&dest, SendAccessToken::IfRequired(hs_token), &VERSIONS) .map_err(|e| {