MatrixSynapse/synapse/handlers
Sean Quah 2ec9c58496
Faster joins: Update room stats and the user directory on workers when finishing join (#14874)
* Faster joins: Update room stats and user directory on workers when done

When finishing a partial state join to a room, we update the current
state of the room without persisting additional events. Workers receive
notice of the current state update over replication, but neglect to wake
the room stats and user directory updaters, which then get incidentally
triggered the next time an event is persisted or an unrelated event
persister sends out a stream position update.

We wake the room stats and user directory updaters at the appropriate
time in this commit.

Part of #12814 and #12815.

Signed-off-by: Sean Quah <seanq@matrix.org>

* fixup comment

Signed-off-by: Sean Quah <seanq@matrix.org>
2023-01-23 10:31:36 +00:00
..
ui_auth Fix twisted trunk mypy errors (#14012) 2022-10-03 13:26:49 +00:00
__init__.py
account.py Optionally include account validity in MSC3720 account status responses (#12266) 2022-03-24 11:19:41 +01:00
account_data.py Merge account data streams (#14826) 2023-01-13 14:57:43 +00:00
account_validity.py Implement cancellation support/protection for module callbacks (#12568) 2022-05-09 12:31:14 +01:00
admin.py Show erasure status when listing users in the Admin API (#14205) 2022-10-21 13:52:44 +01:00
appservice.py Improve logging and opentracing for to-device message handling (#14598) 2022-12-06 09:52:55 +00:00
auth.py Add missing type hints to tests.handlers. (#14680) 2022-12-16 11:53:01 +00:00
cas.py Fix twisted trunk mypy errors (#14012) 2022-10-03 13:26:49 +00:00
deactivate_account.py Add a type hint for `get_device_handler()` and fix incorrect types. (#14055) 2022-11-22 14:08:04 -05:00
device.py Enable Faster Remote Room Joins against worker-mode Synapse. (#14752) 2023-01-22 21:10:11 +00:00
devicemessage.py Batch up replication requests to request the resyncing of remote users's devices. (#14716) 2023-01-10 11:17:59 +00:00
directory.py Allow PUT/GET of aliases during faster join (#14292) 2022-11-01 15:02:39 +00:00
e2e_keys.py Batch up replication requests to request the resyncing of remote users's devices. (#14716) 2023-01-10 11:17:59 +00:00
e2e_room_keys.py Remove redundant types from comments. (#14412) 2022-11-16 15:25:24 +00:00
event_auth.py Faster joins: use servers list approximation in `assert_host_in_room` (#14515) 2022-11-24 09:10:47 +01:00
events.py Directly lookup local membership instead of getting all members in a room first (`get_users_in_room` mis-use) (#13608) 2022-08-24 14:13:12 -05:00
federation.py Faster joins: Update room stats and the user directory on workers when finishing join (#14874) 2023-01-23 10:31:36 +00:00
federation_event.py Wait for streams to catch up when processing HTTP replication. (#14820) 2023-01-18 19:35:29 +00:00
identity.py Remove redundant types from comments. (#14412) 2022-11-16 15:25:24 +00:00
initial_sync.py Merge account data streams (#14826) 2023-01-13 14:57:43 +00:00
message.py Faster remote room joins (worker mode): do not populate external hosts-in-room cache when sending events as this requires blocking for full state. (#14749) 2023-01-11 13:21:53 +00:00
oidc.py Support RFC7636 PKCE in the OAuth 2.0 flow. (#14750) 2023-01-04 14:58:08 -05:00
pagination.py Move `StateFilter` to `synapse.types` (#14668) 2022-12-12 16:19:30 +00:00
password_policy.py
presence.py Add an early return when handling no-op presence updates. (#14855) 2023-01-16 14:20:12 +00:00
profile.py fix broken avatar checks when server_name contains a port (#13927) 2022-10-26 15:51:23 +01:00
push_rules.py Port the push rule classes to Rust. (#13768) 2022-09-20 12:10:31 +01:00
read_marker.py Refactor and convert `Linearizer` to async (#12357) 2022-04-05 15:43:52 +01:00
receipts.py Include thread information when sending receipts over federation. (#14466) 2022-11-28 14:40:17 +00:00
register.py Move `StateFilter` to `synapse.types` (#14668) 2022-12-12 16:19:30 +00:00
relations.py Parallelize calls to fetch bundled aggregations. (#14510) 2022-11-22 09:47:32 -05:00
room.py Make `handle_new_client_event` throws `PartialStateConflictError` (#14665) 2022-12-15 16:04:23 +00:00
room_batch.py Make `handle_new_client_event` throws `PartialStateConflictError` (#14665) 2022-12-15 16:04:23 +00:00
room_list.py Use stable prefixes for MSC3827: filtering of `/publicRooms` by room type (#13370) 2022-07-27 19:46:57 +01:00
room_member.py Make `handle_new_client_event` throws `PartialStateConflictError` (#14665) 2022-12-15 16:04:23 +00:00
room_member_worker.py
room_summary.py Use the room type from stats in hierarchy response. (#14263) 2022-12-13 08:43:53 -05:00
saml.py Remove redundant types from comments. (#14412) 2022-11-16 15:25:24 +00:00
search.py Improve /sync performance of when passing filters with empty arrays. (#14786) 2023-01-09 08:43:50 -05:00
send_email.py Discourage automatic replies to Synapse's emails (#13957) 2022-09-30 13:23:37 +00:00
set_password.py Add a type hint for `get_device_handler()` and fix incorrect types. (#14055) 2022-11-22 14:08:04 -05:00
sso.py Add support for handling avatar with SSO login (#13917) 2022-11-25 15:16:50 +00:00
state_deltas.py Remove `HomeServer.get_datastore()` (#12031) 2022-02-23 11:04:02 +00:00
stats.py Implement MSC3827: Filtering of `/publicRooms` by room type (#13031) 2022-06-29 17:12:45 +00:00
sync.py Merge account data streams (#14826) 2023-01-13 14:57:43 +00:00
typing.py Better return type for `get_all_entities_changed` (#14604) 2022-12-05 15:19:14 -05:00
user_directory.py Clarifications in user directory for users who share rooms tracking (#13966) 2022-09-30 14:40:18 -05:00