Remove mutual_rooms `update_user_directory` check, and add extra documentation (#12038)

Resolves #10339
This commit is contained in:
Jonathan de Jong 2022-03-23 13:47:07 +01:00 committed by GitHub
parent 692b82838e
commit c5776780f0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 17 additions and 5 deletions

1
changelog.d/12038.misc Normal file
View File

@ -0,0 +1 @@
Remove check on `update_user_directory` for shared rooms handler (MSC2666), and update/expand documentation.

View File

@ -528,10 +528,19 @@ the following regular expressions:
^/_matrix/client/(r0|v3|unstable)/user_directory/search$ ^/_matrix/client/(r0|v3|unstable)/user_directory/search$
When using this worker you must also set `update_user_directory: False` in the When using this worker you must also set `update_user_directory: false` in the
shared configuration file to stop the main synapse running background shared configuration file to stop the main synapse running background
jobs related to updating the user directory. jobs related to updating the user directory.
Above endpoint is not *required* to be routed to this worker. By default,
`update_user_directory` is set to `true`, which means the main process
will handle updates. All workers configured with `client` can handle the above
endpoint as long as either this worker or the main process are configured to
handle it, and are online.
If `update_user_directory` is set to `false`, and this worker is not running,
the above endpoint may give outdated results.
### `synapse.app.frontend_proxy` ### `synapse.app.frontend_proxy`
Proxies some frequently-requested client endpoints to add caching and remove Proxies some frequently-requested client endpoints to add caching and remove

View File

@ -42,17 +42,19 @@ class UserMutualRoomsServlet(RestServlet):
super().__init__() super().__init__()
self.auth = hs.get_auth() self.auth = hs.get_auth()
self.store = hs.get_datastores().main self.store = hs.get_datastores().main
self.user_directory_active = hs.config.server.update_user_directory self.user_directory_search_enabled = (
hs.config.userdirectory.user_directory_search_enabled
)
async def on_GET( async def on_GET(
self, request: SynapseRequest, user_id: str self, request: SynapseRequest, user_id: str
) -> Tuple[int, JsonDict]: ) -> Tuple[int, JsonDict]:
if not self.user_directory_active: if not self.user_directory_search_enabled:
raise SynapseError( raise SynapseError(
code=400, code=400,
msg="The user directory is disabled on this server. Cannot determine shared rooms.", msg="User directory searching is disabled. Cannot determine shared rooms.",
errcode=Codes.FORBIDDEN, errcode=Codes.UNKNOWN,
) )
UserID.from_string(user_id) UserID.from_string(user_id)