synapse-product/synapse/handlers
Erik Johnston 1531b214fc
Add ability to wait for replication streams (#7542)
The idea here is that if an instance persists an event via the replication HTTP API it can return before we receive that event over replication, which can lead to races where code assumes that persisting an event immediately updates various caches (e.g. current state of the room).

Most of Synapse doesn't hit such races, so we don't do the waiting automagically, instead we do so where necessary to avoid unnecessary delays. We may decide to change our minds here if it turns out there are a lot of subtle races going on.

People probably want to look at this commit by commit.
2020-05-22 14:21:54 +01:00
..
ui_auth Support for routing outbound HTTP requests via a proxy (#6239) 2019-11-01 14:07:44 +00:00
__init__.py Fix registration on workers (#4682) 2019-02-20 18:47:31 +11:00
_base.py async/await is_server_admin (#7363) 2020-05-01 15:15:36 +01:00
account_data.py Remove unused get_pagination_rows methods. (#6557) 2019-12-17 11:44:32 +00:00
account_validity.py Fix buggy condition in account validity handler (#7074) 2020-03-16 12:16:30 +00:00
acme_issuing_service.py Allow configuration of the path used for ACME account keys. 2019-06-24 13:51:22 +01:00
acme.py Small grammar fixes to the ACME v1 deprecation notice (#6944) 2020-02-21 08:53:01 +00:00
admin.py Admin api to add an email address (#6789) 2020-02-07 10:29:36 +00:00
appservice.py Update black to 19.10b0 (#6304) 2019-11-01 02:43:24 +11:00
auth.py Support UI Authentication for OpenID Connect accounts (#7457) 2020-05-15 12:26:02 -04:00
cas_handler.py Persist user interactive authentication sessions (#7302) 2020-04-30 13:47:49 -04:00
deactivate_account.py Add local_current_membership table (#6655) 2020-01-15 14:59:33 +00:00
device.py Retry to sync out of sync device lists (#7453) 2020-05-21 17:41:12 +02:00
devicemessage.py Resync remote device list when detected as stale. (#6786) 2020-01-30 17:06:38 +00:00
directory.py async/await is_server_admin (#7363) 2020-05-01 15:15:36 +01:00
e2e_keys.py Query missing cross-signing keys on local sig upload (#7289) 2020-04-22 12:29:36 +01:00
e2e_room_keys.py Lint 2020-03-06 15:11:13 +00:00
events.py Stop the master relaying USER_SYNC for other workers (#7318) 2020-04-22 22:39:04 +01:00
federation.py Add ability to wait for replication streams (#7542) 2020-05-22 14:21:54 +01:00
groups_local.py async/await is_server_admin (#7363) 2020-05-01 15:15:36 +01:00
identity.py Convert sending mail to async/await. (#7557) 2020-05-22 13:41:11 +01:00
initial_sync.py Stop the master relaying USER_SYNC for other workers (#7318) 2020-04-22 22:39:04 +01:00
message.py Add ability to wait for replication streams (#7542) 2020-05-22 14:21:54 +01:00
oidc_handler.py Support UI Authentication for OpenID Connect accounts (#7457) 2020-05-15 12:26:02 -04:00
pagination.py Merge pull request #6949 from matrix-org/rav/list_room_aliases_peekable 2020-02-19 11:19:11 +00:00
password_policy.py Allow server admins to define and enforce a password policy (MSC2000). (#7118) 2020-03-26 16:51:13 +00:00
presence.py Ignore incoming presence updates when presence is disabled (#7508) 2020-05-15 11:44:00 +01:00
profile.py async/await is_server_admin (#7363) 2020-05-01 15:15:36 +01:00
read_marker.py Port receipt and read markers to async/wait 2019-10-29 15:08:22 +00:00
receipts.py Clarify list/set/dict/tuple comprehensions and enforce via flake8 (#6957) 2020-02-21 07:15:07 -05:00
register.py Hash passwords earlier in the registration process (#7523) 2020-05-18 09:46:18 -04:00
room_list.py Apply federation check for /publicRooms with filter list (#7367) 2020-04-30 11:38:07 +01:00
room_member_worker.py Add ability to wait for replication streams (#7542) 2020-05-22 14:21:54 +01:00
room_member.py Add ability to wait for replication streams (#7542) 2020-05-22 14:21:54 +01:00
room.py Add ability to wait for replication streams (#7542) 2020-05-22 14:21:54 +01:00
saml_handler.py Add more type hints to SAML handler. (#7445) 2020-05-07 09:30:45 -04:00
search.py Convert search code to async/await. (#7460) 2020-05-11 15:12:39 -04:00
set_password.py Hash passwords earlier in the password reset process (#7538) 2020-05-20 09:48:03 -04:00
state_deltas.py Replace returnValue with return (#5736) 2019-07-23 23:00:55 +10:00
stats.py Reduce amount of logging at INFO level. (#6862) 2020-02-06 13:31:05 +00:00
sync.py Speed up fetching device lists changes in sync. 2020-05-05 17:40:29 +01:00
typing.py Remove concept of a non-limited stream. (#7011) 2020-03-20 14:40:47 +00:00
user_directory.py Filter the results of user directory searching via the spam checker (#6888) 2020-02-14 07:17:54 -05:00