summary refs log tree commit diff
path: root/synapse/handlers/stats.py
diff options
context:
space:
mode:
authorOlivier Wilkinson (reivilibre) <olivier@librepush.net>2019-08-27 14:59:39 +0100
committerOlivier Wilkinson (reivilibre) <olivier@librepush.net>2019-08-27 15:00:16 +0100
commit064143c1308cf6354554702d5041ec4bd3ac8ff8 (patch)
tree05eb5bab6ff5e389c3a11c9fe72f6fefe462447f /synapse/handlers/stats.py
parentFix logic error. (diff)
downloadsynapse-064143c1308cf6354554702d5041ec4bd3ac8ff8.tar.xz
Use `DeferredLock` instead of `threading.Lock`
Signed-off-by: Olivier Wilkinson (reivilibre) <olivier@librepush.net>
Diffstat (limited to 'synapse/handlers/stats.py')
-rw-r--r--synapse/handlers/stats.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/synapse/handlers/stats.py b/synapse/handlers/stats.py

index 2f7c108181..8e1bf8b5d5 100644 --- a/synapse/handlers/stats.py +++ b/synapse/handlers/stats.py
@@ -66,12 +66,13 @@ class StatsHandler(StateDeltasHandler): @defer.inlineCallbacks def process(): + yield lock.acquire() try: yield self._unsafe_process() finally: - lock.release() + yield lock.release() - if lock.acquire(blocking=False): + if not lock.locked: # we only want to run this process one-at-a-time, # and also, if the initial background updater wants us to keep out, # we should respect that.