diff options
author | Erik Johnston <erik@matrix.org> | 2016-06-03 11:52:10 +0100 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2016-06-03 11:52:10 +0100 |
commit | 4982b288687dd48cf381e7d4936d01b9152886c5 (patch) | |
tree | 415655204ca7373943d91e962ce6316b014f6731 /synapse/handlers | |
parent | Merge pull request #828 from matrix-org/erikj/joined_hosts_for_room (diff) | |
parent | Poke notifier on next reactor tick (diff) | |
download | synapse-4982b288687dd48cf381e7d4936d01b9152886c5.tar.xz |
Merge pull request #829 from matrix-org/erikj/poke_notifier
Poke notifier on next reactor tick
Diffstat (limited to 'synapse/handlers')
-rw-r--r-- | synapse/handlers/message.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/synapse/handlers/message.py b/synapse/handlers/message.py index c41dafdef5..15caf1950a 100644 --- a/synapse/handlers/message.py +++ b/synapse/handlers/message.py @@ -26,9 +26,9 @@ from synapse.types import ( UserID, RoomAlias, RoomStreamToken, StreamToken, get_domain_from_id ) from synapse.util import unwrapFirstError -from synapse.util.async import concurrently_execute +from synapse.util.async import concurrently_execute, run_on_reactor from synapse.util.caches.snapshot_cache import SnapshotCache -from synapse.util.logcontext import PreserveLoggingContext, preserve_fn +from synapse.util.logcontext import preserve_fn from synapse.visibility import filter_events_for_client from ._base import BaseHandler @@ -908,13 +908,16 @@ class MessageHandler(BaseHandler): "Failed to get destination from event %s", s.event_id ) - with PreserveLoggingContext(): - # Don't block waiting on waking up all the listeners. + @defer.inlineCallbacks + def _notify(): + yield run_on_reactor() self.notifier.on_new_room_event( event, event_stream_id, max_stream_id, extra_users=extra_users ) + preserve_fn(_notify)() + # If invite, remove room_state from unsigned before sending. event.unsigned.pop("invite_room_state", None) |