summary refs log tree commit diff
path: root/synapse/app/appservice.py
diff options
context:
space:
mode:
authorRichard van der Hoff <github@rvanderhoff.org.uk>2017-03-20 11:53:36 +0000
committerGitHub <noreply@github.com>2017-03-20 11:53:36 +0000
commiteddce9d74abce0e0e65d5292149933ed9bf6025a (patch)
treeb4db8fbbb01c3ee21724aa5eea4639c01ca23f5e /synapse/app/appservice.py
parentMerge pull request #2025 from matrix-org/rav/no_reset_state_on_rejections (diff)
parentStop preserve_fn leaking context into the reactor (diff)
downloadsynapse-eddce9d74abce0e0e65d5292149933ed9bf6025a.tar.xz
Merge pull request #2027 from matrix-org/rav/logcontext_leaks
A few fixes to logcontext things
Diffstat (limited to 'synapse/app/appservice.py')
-rw-r--r--synapse/app/appservice.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/synapse/app/appservice.py b/synapse/app/appservice.py
index 83ee3e3ce3..a6f1e7594e 100644
--- a/synapse/app/appservice.py
+++ b/synapse/app/appservice.py
@@ -29,7 +29,7 @@ from synapse.replication.slave.storage.registration import SlavedRegistrationSto
 from synapse.storage.engines import create_engine
 from synapse.util.async import sleep
 from synapse.util.httpresourcetree import create_resource_tree
-from synapse.util.logcontext import LoggingContext
+from synapse.util.logcontext import LoggingContext, PreserveLoggingContext
 from synapse.util.manhole import manhole
 from synapse.util.rlimit import change_resource_limit
 from synapse.util.versionstring import get_version_string
@@ -187,7 +187,11 @@ def start(config_options):
     ps.start_listening(config.worker_listeners)
 
     def run():
-        with LoggingContext("run"):
+        # make sure that we run the reactor with the sentinel log context,
+        # otherwise other PreserveLoggingContext instances will get confused
+        # and complain when they see the logcontext arbitrarily swapping
+        # between the sentinel and `run` logcontexts.
+        with PreserveLoggingContext():
             logger.info("Running")
             change_resource_limit(config.soft_file_limit)
             if config.gc_thresholds: