summary refs log tree commit diff
diff options
context:
space:
mode:
authorAzrenbeth <7782548+Azrenbeth@users.noreply.github.com>2021-08-13 16:38:16 +0100
committerAzrenbeth <7782548+Azrenbeth@users.noreply.github.com>2021-09-20 16:38:34 +0100
commitf1227107161b8eaecf6da9c20ca5cb981f803fc8 (patch)
tree3d5d347bf5dfcfc1d726c6be773fec7a3688fe89
parentcall compress_largest_rooms every 1 minute (diff)
downloadsynapse-f1227107161b8eaecf6da9c20ca5cb981f803fc8.tar.xz
run in background
-rw-r--r--synapse/app/_base.py25
1 files changed, 18 insertions, 7 deletions
diff --git a/synapse/app/_base.py b/synapse/app/_base.py

index 10f75c4e69..a206c0015c 100644 --- a/synapse/app/_base.py +++ b/synapse/app/_base.py
@@ -43,8 +43,11 @@ from synapse.crypto import context_factory from synapse.events.presence_router import load_legacy_presence_router from synapse.events.spamcheck import load_legacy_spam_checkers from synapse.events.third_party_rules import load_legacy_third_party_event_rules -from synapse.logging.context import PreserveLoggingContext -from synapse.metrics.background_process_metrics import wrap_as_background_process +from synapse.logging.context import PreserveLoggingContext, defer_to_thread +from synapse.metrics.background_process_metrics import ( + run_as_background_process, + wrap_as_background_process, +) from synapse.metrics.jemalloc import setup_jemalloc_stats from synapse.util.caches.lrucache import setup_expire_lru_cache_entries from synapse.util.daemonize import daemonize_process @@ -436,14 +439,22 @@ def setup_state_compressor(hs): database=db_args["database"], ) + def run_state_compressor(): + run_as_background_process( + desc="State Compressor", + func=defer_to_thread, + reactor=hs.get_reactor(), + f=auto_compressor.compress_largest_rooms, + db_url=db_url, + chunk_size=10, + default_levels="100,50,25", + number_of_rooms=10, + ) + clock = hs.get_clock() clock.looping_call( - auto_compressor.compress_largest_rooms, + run_state_compressor, 1 * 60 * 1000, - db_url=db_url, - chunk_size=10, - default_levels="100,50,25", - number_of_rooms=10, )