synapse-product/synapse/handlers
Erik Johnston 8cb44da4aa Fix race in sync when joining room
The race happens when the user joins a room at the same time as doing a
sync. We fetch the current token and then get the rooms the user is in.
If the join happens after the current token, but before we get the rooms
we end up sending down a partial room entry in the sync.

This is fixed by looking at the stream ordering of the membership
returned by get_rooms_for_user, and handling the case when that stream
ordering is after the current token.
2018-03-07 11:55:31 +00:00
..
__init__.py Move RoomMemberHandler out of Handlers 2018-03-01 14:36:50 +00:00
_base.py Move RoomMemberHandler out of Handlers 2018-03-01 14:36:50 +00:00
account_data.py copyrights 2016-01-07 04:26:29 +00:00
admin.py admin,storage: added more administrator functionalities 2017-02-02 14:02:26 +01:00
appservice.py Metrics for events processed in appservice and fed sender 2018-01-15 18:23:24 +00:00
auth.py use bcrypt.checkpw 2018-03-05 18:02:59 +01:00
deactivate_account.py Delete devices in various logout situations 2017-11-29 16:44:35 +00:00
device.py Add federation_domain_whitelist option (#2820) 2018-01-22 19:11:18 +01:00
devicemessage.py Sanity checking for user ids 2018-01-17 14:28:54 +00:00
directory.py Update places where we create events 2018-02-05 16:01:48 +00:00
e2e_keys.py Add federation_domain_whitelist option (#2820) 2018-01-22 19:11:18 +01:00
events.py Use state handler instead of get_users_in_room/get_joined_hosts 2016-08-26 14:54:30 +01:00
federation.py Move RoomMemberHandler out of Handlers 2018-03-01 14:36:50 +00:00
groups_local.py fix order of operations derp and also use .get to default to {} 2018-01-10 15:11:35 +00:00
identity.py Revert accidental commit 2017-04-26 11:43:16 +01:00
initial_sync.py Remove preserve_context_over_{fn, deferred} 2017-11-14 11:22:42 +00:00
message.py Provide a means to pass a timestamp to purge_history 2018-03-05 14:37:23 +00:00
presence.py typo 2017-11-17 01:54:02 +00:00
profile.py Move RoomMemberHandler out of Handlers 2018-03-01 14:36:50 +00:00
read_marker.py Improve caching for read_marker API 2018-03-01 17:08:17 +00:00
receipts.py fix a logcontext leak in read receipt handling 2017-10-11 14:37:20 +01:00
register.py rewrite based on PR feedback: 2018-01-19 15:33:55 +00:00
room_list.py add white space line 2018-01-26 00:15:10 +00:00
room_member.py Add missing yield during 3pid signature checks 2018-03-02 11:03:18 +00:00
room.py Remove ability for AS users to call /events and /sync 2018-03-05 15:44:46 +00:00
search.py replace 'except:' with 'except Exception:' 2017-10-23 15:52:32 +01:00
set_password.py Do bcrypt hashing in a background thread 2018-01-10 18:01:28 +00:00
sync.py Fix race in sync when joining room 2018-03-07 11:55:31 +00:00
typing.py Fix typing tests 2017-05-26 10:02:04 +01:00
user_directory.py speed up the rate of initial spam for users 2017-12-04 18:05:28 +00:00