synapse-product/synapse
Sean Quah c73774467e
Fix bug in device list caching when remote users leave rooms (#13749)
When a remote user leaves the last room shared with the homeserver, we
have to mark their device list as unsubscribed, otherwise we would hold
on to a stale device list in our cache. Crucially, the device list would
remain cached even after the remote user rejoined the room, which could
lead to E2EE failures until the next change to the remote user's device
list.

Fixes #13651.

Signed-off-by: Sean Quah <seanq@matrix.org>
2022-09-14 10:42:57 +01:00
..
_scripts Add receipts event stream ordering (#13703) 2022-09-13 08:16:37 +01:00
api Tag trace with instance name (#13761) 2022-09-09 11:31:37 -05:00
app Fix Prometheus recording rules to not use legacy metric names. (#13718) 2022-09-08 15:01:42 +01:00
appservice Add prometheus counters for content types other than events (#13175) 2022-07-13 15:18:20 +01:00
config Fix a bug where Synapse fails to start if a signing key file contains an empty line. (#13738) 2022-09-08 11:18:03 +01:00
crypto Instrument _check_sigs_and_hash_and_fetch to trace time spent in child concurrent calls (#13588) 2022-08-23 21:53:37 -05:00
events Rename the EventFormatVersions enum values so that they line up with room version numbers. (#13706) 2022-09-07 11:08:20 +01:00
federation Fix a long-standing spec compliance bug where Synapse would accept a trailing slash on the end of /get_missing_events federation requests. (#13789) 2022-09-14 09:28:12 +01:00
handlers Fix bug in device list caching when remote users leave rooms (#13749) 2022-09-14 10:42:57 +01:00
http A second batch of Pydantic models for rest/client/account.py (#13687) 2022-09-07 12:16:10 +01:00
logging Tag trace with instance name (#13761) 2022-09-09 11:31:37 -05:00
metrics Fix cache metrics not being updated when not using the legacy exposition module. (#13717) 2022-09-08 15:30:48 +01:00
module_api Update module API "update room membership" method to allow for remote joins (#13441) 2022-08-05 09:37:58 +00:00
push Concurrently collect room unread counts for push badges (#13765) 2022-09-09 19:00:21 +01:00
replication Remove configuration options for direct TCP replication. (#13647) 2022-09-06 07:50:02 +00:00
res Add viewport directive to HTML templates to optimise for mobile (#13493) 2022-08-11 14:04:20 +01:00
rest A second batch of Pydantic models for rest/client/account.py (#13687) 2022-09-07 12:16:10 +01:00
server_notices 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
spam_checker_api Fix import in module_api module and docs on the new check_event_for_spam signature (#12918) 2022-05-31 12:04:53 +02:00
state Remove cached wrap on _get_joined_users_from_context method (#13569) 2022-08-31 12:19:39 +01:00
static Add viewport directive to HTML templates to optimise for mobile (#13493) 2022-08-11 14:04:20 +01:00
storage Fix bug in device list caching when remote users leave rooms (#13749) 2022-09-14 10:42:57 +01:00
streams Instrument /messages for understandable traces in Jaeger (#13368) 2022-08-03 10:57:38 -05:00
util Check if Rust lib needs rebuilding. (#13759) 2022-09-12 10:03:42 +00:00
__init__.py Check if Rust lib needs rebuilding. (#13759) 2022-09-12 10:03:42 +00:00
event_auth.py Rename the EventFormatVersions enum values so that they line up with room version numbers. (#13706) 2022-09-07 11:08:20 +01:00
notifier.py Notifier: accept callbacks to fire on room joins (#13254) 2022-07-13 19:48:24 +01:00
py.typed Mark Module API error imports as re-exported and mark Synapse as containing type annotations (#11054) 2021-10-13 08:42:41 +01:00
server.py Fix error in is_mine_id when encountering a malformed ID (#13746) 2022-09-08 15:54:36 +01:00
types.py Cancel the processing of key query requests when they time out. (#13680) 2022-09-07 12:03:32 +01:00
visibility.py Add some miscellaneous comments around sync (#13474) 2022-08-10 12:58:20 +01:00