From 586f474a44cf320c7d578714aea5113f2701073c Mon Sep 17 00:00:00 2001 From: Erik Johnston Date: Tue, 10 Jan 2017 12:46:00 +0000 Subject: [PATCH 1/2] Don't block messages sending on bumping presence --- synapse/handlers/message.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/synapse/handlers/message.py b/synapse/handlers/message.py index 7a57a69bd..59d0ad3bd 100644 --- a/synapse/handlers/message.py +++ b/synapse/handlers/message.py @@ -279,7 +279,7 @@ class MessageHandler(BaseHandler): if event.type == EventTypes.Message: presence = self.hs.get_presence_handler() - yield presence.bump_presence_active_time(user) + preserve_fn(presence.bump_presence_active_time)(user) @defer.inlineCallbacks def deduplicate_state_event(self, event, context): From 3b4de17d2be01a0726152f614eb03078979ec631 Mon Sep 17 00:00:00 2001 From: Erik Johnston Date: Tue, 10 Jan 2017 14:05:53 +0000 Subject: [PATCH 2/2] Comment --- synapse/handlers/message.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/synapse/handlers/message.py b/synapse/handlers/message.py index 59d0ad3bd..88bd2d572 100644 --- a/synapse/handlers/message.py +++ b/synapse/handlers/message.py @@ -279,6 +279,8 @@ class MessageHandler(BaseHandler): if event.type == EventTypes.Message: presence = self.hs.get_presence_handler() + # We don't want to block sending messages on any presence code. This + # matters as sometimes presence code can take a while. preserve_fn(presence.bump_presence_active_time)(user) @defer.inlineCallbacks