MatrixSynapse/synapse/storage/databases/main
David Robertson b83e822556
Stop user directory from failing if it encounters users not in the `users` table. (#11053)
The following scenarios would halt the user directory updater:

- user joins room
- user leaves room
- user present in room which switches from private to public, or vice versa.

for two classes of users:

- appservice senders
- users missing from the user table.

If this happened, the user directory would be stuck, unable to make forward progress.

Exclude both cases from the user directory, so that we ignore them.

Co-authored-by: Eric Eastwood <erice@element.io>
Co-authored-by: reivilibre <oliverw@matrix.org>
Co-authored-by: Sean Quah <8349537+squahtx@users.noreply.github.com>
Co-authored-by: Brendan Abolivier <babolivier@matrix.org>
2021-10-13 09:38:22 +00:00
..
__init__.py Verify `?chunk_id` actually corresponds to an insertion event that exists (MSC2716) (#10776) 2021-09-15 09:34:30 +01:00
account_data.py Remove unnecessary parentheses around tuples returned from methods (#10889) 2021-09-23 11:59:07 +01:00
appservice.py Use direct references for some configuration variables (part 3) (#10885) 2021-09-23 07:13:34 -04:00
cache.py
censor_events.py Use direct references for configuration variables (part 6). (#10916) 2021-09-29 06:44:15 -04:00
client_ips.py Stop user directory from failing if it encounters users not in the `users` table. (#11053) 2021-10-13 09:38:22 +00:00
deviceinbox.py Remove unnecessary parentheses around tuples returned from methods (#10889) 2021-09-23 11:59:07 +01:00
devices.py Use direct references for some configuration variables (#10798) 2021-09-13 13:07:12 -04:00
directory.py Allow `room_alias_name` parameter to be handled by /createRoom calls on workers (#10757) 2021-09-06 14:37:15 +01:00
e2e_room_keys.py
end_to_end_keys.py Fix invalidating OTK count cache after claim (#10875) 2021-09-22 15:31:05 +01:00
event_federation.py Rename MSC2716 things from `chunk` to `batch` to match `/batch_send` endpoint (#10838) 2021-09-21 15:06:28 -05:00
event_push_actions.py Use direct references for some configuration variables (#10798) 2021-09-13 13:07:12 -04:00
events.py Fix logic flaw preventing tracking of MSC2716 events in existing room versions (#10962) 2021-10-05 11:51:57 -05:00
events_bg_updates.py Fix remove_stale_pushers job on SQLite. (#10843) 2021-09-20 10:26:13 +01:00
events_forward_extremities.py
events_worker.py Remove unnecessary parentheses around tuples returned from methods (#10889) 2021-09-23 11:59:07 +01:00
filtering.py Add type hints to filtering classes. (#10958) 2021-10-01 07:02:32 -04:00
group_server.py [pyupgrade] `synapse/` (#10348) 2021-07-19 15:28:05 +01:00
keys.py
lock.py Fix dropping locks on shut down (#10433) 2021-07-20 14:24:25 +01:00
media_repository.py
metrics.py Use direct references for some configuration variables (#10798) 2021-09-13 13:07:12 -04:00
monthly_active_users.py Add functionality to remove deactivated users from the monthly_active_users table (#10947) 2021-10-04 08:34:42 -07:00
openid.py
presence.py Add a partial index to `presence_stream` to speed up startups (#10748) 2021-09-03 17:16:56 +01:00
profile.py
purge_events.py In `_purge_history_txn`, ensure that txn.fetchall has elements before accessing rows (#10690) 2021-09-24 09:19:51 +00:00
push_rule.py disallow-untyped-defs for synapse.push (#11023) 2021-10-11 17:42:10 +01:00
pusher.py Annotate synapse.storage.util (#10892) 2021-10-08 14:25:16 +00:00
receipts.py Add type hints for event streams. (#10856) 2021-09-21 13:34:26 -04:00
registration.py Annotate synapse.storage.util (#10892) 2021-10-08 14:25:16 +00:00
rejections.py
relations.py
room.py Use direct references for configuration variables (part 6). (#10916) 2021-09-29 06:44:15 -04:00
room_batch.py Ensure `(room_id, next_batch_id)` is unique to avoid cross-talk/conflicts between batches (MSC2716) (#10877) 2021-09-28 21:23:16 -05:00
roommember.py Use direct references for configuration variables (part 4). (#10893) 2021-09-23 12:03:01 -04:00
search.py Use direct references for configuration variables (part 6). (#10916) 2021-09-29 06:44:15 -04:00
session.py Use direct references for some configuration variables (#10798) 2021-09-13 13:07:12 -04:00
signatures.py
state.py Fix remove_stale_pushers job on SQLite. (#10843) 2021-09-20 10:26:13 +01:00
state_deltas.py Remove unnecessary parentheses around tuples returned from methods (#10889) 2021-09-23 11:59:07 +01:00
stats.py Use direct references for configuration variables (part 5). (#10897) 2021-09-24 07:25:21 -04:00
stream.py Remove unnecessary parentheses around tuples returned from methods (#10889) 2021-09-23 11:59:07 +01:00
tags.py
transactions.py Use direct references for some configuration variables (#10798) 2021-09-13 13:07:12 -04:00
ui_auth.py Fix remove_stale_pushers job on SQLite. (#10843) 2021-09-20 10:26:13 +01:00
user_directory.py Stop user directory from failing if it encounters users not in the `users` table. (#11053) 2021-10-13 09:38:22 +00:00
user_erasure_store.py