summary refs log tree commit diff
path: root/synapse/handlers
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2015-03-16 14:13:34 +0000
committerErik Johnston <erik@matrix.org>2015-03-16 14:13:34 +0000
commitac8eb0f319dcfb4463dcffc7da07524ea24f1331 (patch)
tree6fb666dbac7387b21fbbafa8922b3aebc8704721 /synapse/handlers
parentadd ToC and fix typoe (diff)
parentDon't block waiting on waking up all the listeners when sending an event. (diff)
downloadsynapse-ac8eb0f319dcfb4463dcffc7da07524ea24f1331.tar.xz
Merge pull request #111 from matrix-org/send_event_dont_wait_on_notifier
Don't block waiting on waking up all the listeners when sending an event
Diffstat (limited to 'synapse/handlers')
-rw-r--r--synapse/handlers/_base.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/synapse/handlers/_base.py b/synapse/handlers/_base.py
index 1773fa20aa..7f07f05215 100644
--- a/synapse/handlers/_base.py
+++ b/synapse/handlers/_base.py
@@ -142,7 +142,16 @@ class BaseHandler(object):
                     "Failed to get destination from event %s", s.event_id
                 )
 
-        yield self.notifier.on_new_room_event(event, extra_users=extra_users)
+        # Don't block waiting on waking up all the listeners.
+        d = self.notifier.on_new_room_event(event, extra_users=extra_users)
+
+        def log_failure(f):
+            logger.warn(
+                "Failed to notify about %s: %s",
+                event.event_id, f.value
+            )
+
+        d.addErrback(log_failure)
 
         yield federation_handler.handle_new_event(
             event, destinations=destinations,