diff --git a/synapse/app/_base.py b/synapse/app/_base.py index 46cf2fb098..109b1e2fb5 100644 --- a/synapse/app/_base.py +++ b/synapse/app/_base.py @@ -282,9 +282,12 @@ def start(hs, listeners=None): # We now freeze all allocated objects in the hopes that (almost) # everything currently allocated are things that will be used for the - # rest of time. Doing so means less work each GC (hopefully) - gc.collect() - gc.freeze() + # rest of time. Doing so means less work each GC (hopefully). + # + # This only works on Python 3.7 + if sys.version_info >= (3, 7): + gc.collect() + gc.freeze() except Exception: traceback.print_exc(file=sys.stderr) reactor = hs.get_reactor()