@ -52,7 +52,7 @@ from synapse.api.urls import (
)
from synapse . config . homeserver import HomeServerConfig
from synapse . crypto import context_factory
from synapse . util . logcontext import LoggingContext
from synapse . util . logcontext import LoggingContext , PreserveLoggingContext
from synapse . metrics import register_memory_metrics , get_metrics_for
from synapse . metrics . resource import MetricsResource , METRICS_PREFIX
from synapse . replication . resource import ReplicationResource , REPLICATION_PREFIX
@ -456,7 +456,12 @@ def run(hs):
def in_thread ( ) :
# Uncomment to enable tracing of log context changes.
# sys.settrace(logcontext_tracer)
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 ( ) :
change_resource_limit ( hs . config . soft_file_limit )
if hs . config . gc_thresholds :
gc . set_threshold ( * hs . config . gc_thresholds )