diff options
author | Erik Johnston <erik@matrix.org> | 2015-03-16 13:16:37 +0000 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2015-03-16 13:16:37 +0000 |
commit | c2c9471cbab2795edaced4d89ed9ef80ef129afe (patch) | |
tree | 6fb666dbac7387b21fbbafa8922b3aebc8704721 /synapse | |
parent | add ToC and fix typoe (diff) | |
download | synapse-c2c9471cbab2795edaced4d89ed9ef80ef129afe.tar.xz |
Don't block waiting on waking up all the listeners when sending an event.
Diffstat (limited to 'synapse')
-rw-r--r-- | synapse/handlers/_base.py | 11 |
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, |