summary refs log tree commit diff
path: root/synapse/handlers
diff options
context:
space:
mode:
authorErik Johnston <erikj@jki.re>2016-10-24 13:58:28 +0100
committerGitHub <noreply@github.com>2016-10-24 13:58:28 +0100
commite83a08d795ed15c7cd9378dfa75b1c7b388a80f7 (patch)
treed11c5a6dfa49cc0efbb80b4b99ea7767bc2b768c /synapse/handlers
parentMerge pull request #1177 from matrix-org/paul/standard-metric-names (diff)
parentActually use the new function (diff)
downloadsynapse-e83a08d795ed15c7cd9378dfa75b1c7b388a80f7.tar.xz
Merge pull request #1178 from matrix-org/erikj/current_room_token
Fix incredibly slow back pagination query
Diffstat (limited to 'synapse/handlers')
-rw-r--r--synapse/handlers/message.py4
-rw-r--r--synapse/handlers/room.py7
2 files changed, 7 insertions, 4 deletions
diff --git a/synapse/handlers/message.py b/synapse/handlers/message.py
index 59eb26beaf..abfa8c65a4 100644
--- a/synapse/handlers/message.py
+++ b/synapse/handlers/message.py
@@ -82,8 +82,8 @@ class MessageHandler(BaseHandler):
             room_token = pagin_config.from_token.room_key
         else:
             pagin_config.from_token = (
-                yield self.hs.get_event_sources().get_current_token(
-                    direction='b'
+                yield self.hs.get_event_sources().get_current_token_for_room(
+                    room_id=room_id
                 )
             )
             room_token = pagin_config.from_token.room_key
diff --git a/synapse/handlers/room.py b/synapse/handlers/room.py
index a7f533f7be..59e4d1cd15 100644
--- a/synapse/handlers/room.py
+++ b/synapse/handlers/room.py
@@ -475,8 +475,11 @@ class RoomEventSource(object):
 
         defer.returnValue((events, end_key))
 
-    def get_current_key(self, direction='f'):
-        return self.store.get_room_events_max_id(direction)
+    def get_current_key(self):
+        return self.store.get_room_events_max_id()
+
+    def get_current_key_for_room(self, room_id):
+        return self.store.get_room_events_max_id(room_id)
 
     @defer.inlineCallbacks
     def get_pagination_rows(self, user, config, key):