forked-synapse/synapse/handlers
Brendan Abolivier 708cef88cf
Discard retention policies when retrieving state
Purge jobs don't delete the latest event in a room in order to keep the forward extremity and not break the room. On the other hand, get_state_events, when given an at_token argument calls filter_events_for_client to know if the user can see the event that matches that (sync) token. That function uses the retention policies of the events it's given to filter out those that are too old from a client's view.

Some clients, such as Riot, when loading a room, request the list of members for the latest sync token it knows about, and get confused to the point of refusing to send any message if the server tells it that it can't get that information. This can happen very easily with the message retention feature turned on and a room with low activity so that the last event sent becomes too old according to the room's retention policy.

An easy and clean fix for that issue is to discard the room's retention policies when retrieving state.
2019-11-28 19:26:26 +00: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 Fix comments 2019-09-11 13:54:50 +01:00
account_data.py Update black to 19.10b0 (#6304) 2019-11-01 02:43:24 +11:00
account_validity.py Allow Synapse to send registration emails + choose Synapse or an external server to handle 3pid validation (#5987) 2019-09-06 11:35:28 +01: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 Replace returnValue with return (#5736) 2019-07-23 23:00:55 +10:00
admin.py Port to use state storage 2019-10-30 14:46:54 +00:00
appservice.py Update black to 19.10b0 (#6304) 2019-11-01 02:43:24 +11:00
auth.py Merge pull request #6335 from matrix-org/erikj/rc_login_cleanups 2019-11-20 09:52:38 +00:00
deactivate_account.py Remove local threepids on account deactivation (#6426) 2019-11-28 10:40:42 +00:00
device.py Merge branch 'develop' into cross-signing_federation 2019-10-31 22:38:21 -04:00
devicemessage.py Remove usage of deprecated logger.warn method from codebase (#6271) 2019-10-31 10:23:24 +00:00
directory.py Clean up newline quote marks around the codebase (#6362) 2019-11-21 12:00:14 +00:00
e2e_keys.py Fix caching devices for remote servers in worker. 2019-11-05 15:49:43 +00:00
e2e_room_keys.py add etag and count to key backup endpoints (#5858) 2019-11-27 16:14:44 -05:00
events.py Port to use state storage 2019-10-30 14:46:54 +00:00
federation.py Merge pull request #6358 from matrix-org/babolivier/message_retention 2019-11-27 15:04:38 +00:00
groups_local.py Remove usage of deprecated logger.warn method from codebase (#6271) 2019-10-31 10:23:24 +00:00
identity.py Remove usage of deprecated logger.warn method from codebase (#6271) 2019-10-31 10:23:24 +00:00
initial_sync.py Update black to 19.10b0 (#6304) 2019-11-01 02:43:24 +11:00
message.py Discard retention policies when retrieving state 2019-11-28 19:26:26 +00:00
pagination.py Merge branch 'develop' into babolivier/message_retention 2019-11-26 17:53:57 +00:00
presence.py Fix presence timeouts when synchrotron restarts. (#6212) 2019-10-18 06:42:26 +01:00
profile.py Replace instance variations of homeserver with correct case/spacing 2019-11-12 13:08:12 +00:00
read_marker.py Port receipt and read markers to async/wait 2019-10-29 15:08:22 +00:00
receipts.py Port receipt and read markers to async/wait 2019-10-29 15:08:22 +00:00
register.py Replace instance variations of homeserver with correct case/spacing 2019-11-12 13:08:12 +00:00
room_list.py Remove unused public room list timeout param (#6179) 2019-10-08 13:51:25 +01:00
room_member_worker.py Replace returnValue with return (#5736) 2019-07-23 23:00:55 +10:00
room_member.py Re-add docstring, with caveats detailed 2019-11-04 18:17:11 +00:00
room.py Depublish a room from the public rooms list when it is upgraded (#6232) 2019-11-01 10:28:09 +00:00
saml_handler.py More better logging 2019-09-20 11:20:02 +01:00
search.py Update black to 19.10b0 (#6304) 2019-11-01 02:43:24 +11:00
set_password.py Added possibilty to disable local password authentication (#5092) 2019-06-27 18:37:29 +01:00
state_deltas.py Replace returnValue with return (#5736) 2019-07-23 23:00:55 +10:00
stats.py Update black to 19.10b0 (#6304) 2019-11-01 02:43:24 +11:00
sync.py Update black to 19.10b0 (#6304) 2019-11-01 02:43:24 +11:00
typing.py Replace instance variations of homeserver with correct case/spacing 2019-11-12 13:08:12 +00:00
user_directory.py Fix races in room stats (and other) updates. (#6187) 2019-10-10 11:29:01 +01:00