summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--synapse/handlers/presence.py4
-rw-r--r--synapse/replication/presence_resource.py1
2 files changed, 3 insertions, 2 deletions
diff --git a/synapse/handlers/presence.py b/synapse/handlers/presence.py
index 21e3028d37..fc8538b41e 100644
--- a/synapse/handlers/presence.py
+++ b/synapse/handlers/presence.py
@@ -175,7 +175,7 @@ class PresenceHandler(object):
         # Stored as a dict from process_id to set of user_id, and a dict of
         # process_id to millisecond timestamp last updated.
         self.external_process_to_current_syncs = {}
-        self.external_process_last_updated_ms = []
+        self.external_process_last_updated_ms = {}
 
         # Start a LoopingCall in 30s that fires every 5s.
         # The initial delay is to allow disconnected clients a chance to
@@ -422,7 +422,7 @@ class PresenceHandler(object):
         # Grab the current presence state for both the users that are syncing
         # now and the users that were syncing before this update.
         prev_states = yield self.current_state_for_users(
-            syncing_user_ids + prev_syncing_user_ids
+            syncing_user_ids | prev_syncing_user_ids
         )
         updates = []
         time_now_ms = self.clock.time_msec()
diff --git a/synapse/replication/presence_resource.py b/synapse/replication/presence_resource.py
index 5a1b1a8dae..fc18130ab4 100644
--- a/synapse/replication/presence_resource.py
+++ b/synapse/replication/presence_resource.py
@@ -37,6 +37,7 @@ class PresenceResource(Resource):
         Resource.__init__(self)  # Resource is old-style, so no super()
 
         self.version_string = hs.version_string
+        self.clock = hs.get_clock()
         self.presence_handler = hs.get_presence_handler()
 
     def render_POST(self, request):