summary refs log tree commit diff
path: root/synapse/federation/replication.py
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2014-12-03 18:02:33 +0000
committerErik Johnston <erik@matrix.org>2014-12-03 18:02:33 +0000
commit036516d647c6fbd8ec4642a3308e73f71868b1b3 (patch)
tree6cfacc683f68a9e9748058335c36e8ee2fa7f83d /synapse/federation/replication.py
parentBump version (diff)
parentBump changes and version (diff)
downloadsynapse-036516d647c6fbd8ec4642a3308e73f71868b1b3.tar.xz
Merge branch 'release-v0.5.4' of github.com:matrix-org/synapse v0.5.4
Diffstat (limited to 'synapse/federation/replication.py')
-rw-r--r--synapse/federation/replication.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/synapse/federation/replication.py b/synapse/federation/replication.py
index 312d69fcaa..01f87fe423 100644
--- a/synapse/federation/replication.py
+++ b/synapse/federation/replication.py
@@ -853,7 +853,10 @@ class _TransactionQueue(object):
 
                 # Ensures we don't continue until all callbacks on that
                 # deferred have fired
-                yield deferred
+                try:
+                    yield deferred
+                except:
+                    pass
 
             logger.debug("TX [%s] Yielded to callbacks", destination)
 
@@ -865,7 +868,8 @@ class _TransactionQueue(object):
             logger.exception(e)
 
             for deferred in deferreds:
-                deferred.errback(e)
+                if not deferred.called:
+                    deferred.errback(e)
 
         finally:
             # We want to be *very* sure we delete this after we stop processing