summary refs log tree commit diff
path: root/synapse
diff options
context:
space:
mode:
authorRichard van der Hoff <richard@matrix.org>2017-10-06 22:24:28 +0100
committerRichard van der Hoff <richard@matrix.org>2017-10-06 22:24:28 +0100
commit148428ce763978583da2b1d3c435ec321df45855 (patch)
tree98e65e55f5f2827600a50c64d0da8940f95a156a /synapse
parentsome comments in the state res code (diff)
downloadsynapse-148428ce763978583da2b1d3c435ec321df45855.tar.xz
Fix logcontext handling for concurrently_execute
Avoid preserve_context_over_deferred, which is broken.
Diffstat (limited to 'synapse')
-rw-r--r--synapse/util/async.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/synapse/util/async.py b/synapse/util/async.py
index 1453faf0ef..bb252f75d7 100644
--- a/synapse/util/async.py
+++ b/synapse/util/async.py
@@ -19,7 +19,7 @@ from twisted.internet import defer, reactor
 from .logcontext import (
     PreserveLoggingContext, preserve_fn, preserve_context_over_deferred,
 )
-from synapse.util import unwrapFirstError
+from synapse.util import logcontext, unwrapFirstError
 
 from contextlib import contextmanager
 
@@ -155,7 +155,7 @@ def concurrently_execute(func, args, limit):
         except StopIteration:
             pass
 
-    return preserve_context_over_deferred(defer.gatherResults([
+    return logcontext.make_deferred_yieldable(defer.gatherResults([
         preserve_fn(_concurrently_execute_inner)()
         for _ in xrange(limit)
     ], consumeErrors=True)).addErrback(unwrapFirstError)