summary refs log tree commit diff
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2019-06-21 10:43:12 +0100
committerErik Johnston <erik@matrix.org>2019-06-21 10:43:12 +0100
commitf3ab533374850285360cf5aa0ef61350c5229307 (patch)
tree04e6f3a60f875d573fbad0d5247f286f7cf1bc65
parentMerge pull request #5476 from matrix-org/erikj/histogram_extremities (diff)
downloadsynapse-f3ab533374850285360cf5aa0ef61350c5229307.tar.xz
Support pagination API in client_reader worker
-rw-r--r--docs/workers.rst7
-rw-r--r--synapse/app/client_reader.py2
2 files changed, 9 insertions, 0 deletions
diff --git a/docs/workers.rst b/docs/workers.rst
index aa4e7a120b..5b08fd7ee8 100644
--- a/docs/workers.rst
+++ b/docs/workers.rst
@@ -239,6 +239,13 @@ be routed to the same instance::
 
     ^/_matrix/client/(r0|unstable)/register$
 
+Pagination requests can also be handled, but all requests with the same path
+room must be routed to the same instance. Additionally, care must be taken to
+ensure that the purge history admin API is not used while pagination requests
+for the room are not in flight::
+
+    ^/_matrix/client/(api/v1|r0|unstable)/rooms/.*/messages$
+
 
 ``synapse.app.user_dir``
 ~~~~~~~~~~~~~~~~~~~~~~~~
diff --git a/synapse/app/client_reader.py b/synapse/app/client_reader.py
index 310cdab2e4..fb82206762 100644
--- a/synapse/app/client_reader.py
+++ b/synapse/app/client_reader.py
@@ -52,6 +52,7 @@ from synapse.rest.client.v1.room import (
     PublicRoomListRestServlet,
     RoomEventContextServlet,
     RoomMemberListRestServlet,
+    RoomMessageListRestServlet,
     RoomStateRestServlet,
 )
 from synapse.rest.client.v1.voip import VoipRestServlet
@@ -109,6 +110,7 @@ class ClientReaderServer(HomeServer):
                     JoinedRoomMemberListRestServlet(self).register(resource)
                     RoomStateRestServlet(self).register(resource)
                     RoomEventContextServlet(self).register(resource)
+                    RoomMessageListRestServlet(self).register(resource)
                     RegisterRestServlet(self).register(resource)
                     LoginRestServlet(self).register(resource)
                     ThreepidRestServlet(self).register(resource)