synapse-product/synapse/storage/databases/main
Richard van der Hoff 79dadf7216
Fix 404 on /sync when the last event is a redaction of an unknown/purged event (#12905)
Currently, we try to pull the event corresponding to a sync token from the database. However, when
we fetch redaction events, we check the target of that redaction (because we aren't allowed to send
redactions to clients without validating them). So, if the sync token points to a redaction of an event
that we don't have, we have a problem.

It turns out we don't really need that event, and can just work with its ID and metadata, which
sidesteps the whole problem.
2022-06-01 11:29:51 +00:00
..
__init__.py Add some type hints to datastore (#12717) 2022-05-17 15:29:06 +01:00
account_data.py Use the ignored_users table to test event visibility & sync. (#12225) 2022-03-15 14:06:05 -04:00
appservice.py Remove code which updates application_services_state.last_txn (#12680) 2022-05-17 11:07:18 +01:00
cache.py Add index to cache invalidations (#12747) 2022-05-17 09:34:59 +00:00
censor_events.py Type hint the constructors of the data store classes (#11555) 2021-12-13 17:05:00 +00:00
client_ips.py Optimise _update_client_ips_batch_txn to batch together database operations. (#12252) 2022-04-08 15:29:13 +01:00
deviceinbox.py Add some type hints to datastore (#12485) 2022-04-27 13:05:00 +01:00
devices.py Add a background job to automatically delete stale devices (#12855) 2022-05-27 17:47:32 +02:00
directory.py Replace uses of simple_insert_many with simple_insert_many_values. (#11742) 2022-01-13 19:44:18 -05:00
e2e_room_keys.py Add StreamKeyType class and replace string literals with constants (#12567) 2022-05-16 15:35:31 +00:00
end_to_end_keys.py Add support for MSC3202: sending one-time key counts and fallback key usage states to Application Services. (#11617) 2022-02-24 17:55:45 +00:00
event_federation.py Stop reading from event_edges.room_id. (#12914) 2022-05-31 13:51:49 +01:00
event_push_actions.py Avoid attempting to delete push actions for remote users. (#12879) 2022-05-26 07:09:16 -04:00
events_bg_updates.py Replace uses of simple_insert_many with simple_insert_many_values. (#11742) 2022-01-13 19:44:18 -05:00
events_forward_extremities.py Fix returned count of delete extremities admin API (#12496) 2022-04-19 16:49:45 +01:00
events_worker.py Stop reading from event_edges.room_id. (#12914) 2022-05-31 13:51:49 +01:00
events.py Experimental support for MSC3772 (#12740) 2022-05-24 13:23:23 +00:00
filtering.py Improve type hints in storage classes. (#11652) 2021-12-29 13:04:28 +00:00
group_server.py Remove most groups datastore code. (#12895) 2022-05-31 20:28:17 -04:00
keys.py Add some type hints to datastore (#12485) 2022-04-27 13:05:00 +01:00
lock.py LockStore: fix acquiring a lock via LockStore.try_acquire_lock (#12832) 2022-05-30 09:41:13 +01:00
media_repository.py Add some type hints to datastore (#12485) 2022-04-27 13:05:00 +01:00
metrics.py Add some type hints to datastore (#12717) 2022-05-17 15:29:06 +01:00
monthly_active_users.py Add storage and module API methods to get monthly active users and their appservices (#12838) 2022-05-27 10:25:57 +00:00
openid.py Add type hints to some storage classes (#11307) 2021-11-11 08:47:31 -05:00
presence.py Reduce DB load of /sync when using presence (#12885) 2022-05-31 13:01:05 +00:00
profile.py Database storage profile passes mypy (#11342) 2021-11-15 12:59:33 +00:00
purge_events.py Fix room deletion (#12889) 2022-05-27 10:31:08 +01:00
push_rule.py Misc clean-up of push rules datastore (#12856) 2022-05-25 07:49:12 -04:00
pusher.py Fix invite notifications for users without pushers (#12840) 2022-05-30 13:14:43 +02:00
receipts.py Clean-up some receipts code (#12888) 2022-05-27 07:44:10 -04:00
registration.py Add mau_appservice_trial_days config (#12619) 2022-05-04 19:33:26 +01:00
rejections.py Remove redundant "coding: utf-8" lines (#9786) 2021-04-14 15:34:27 +01:00
relations.py Fix caching behavior for relations push rules. (#12859) 2022-05-25 07:49:54 -04:00
room_batch.py Correct type hint for room_batch.py (#11310) 2021-11-11 16:49:28 +00:00
room.py Faster room joins: Resume state re-syncing after a Synapse restart (#12813) 2022-05-31 15:15:08 +00:00
roommember.py Mutual rooms: Remove dependency on user directory (#12836) 2022-05-30 10:05:31 +01:00
search.py Add some type hints to datastore. (#12477) 2022-05-10 14:07:48 -04:00
session.py Run pyupgrade --py37-plus --keep-percent-format on Synapse (#11685) 2022-01-05 09:53:05 -08:00
signatures.py remove constantly lib use and switch to enums. (#12624) 2022-05-04 11:26:11 +00:00
state_deltas.py Improve log messages for stream ids (#11536) 2021-12-08 14:15:14 +00:00
state.py Fix 404 on /sync when the last event is a redaction of an unknown/purged event (#12905) 2022-06-01 11:29:51 +00:00
stats.py Add some type hints to datastore. (#12255) 2022-03-28 14:11:14 -04:00
stream.py Fix 404 on /sync when the last event is a redaction of an unknown/purged event (#12905) 2022-06-01 11:29:51 +00:00
tags.py Add some type hints to datastore (#12423) 2022-04-12 11:54:00 +01:00
transactions.py Add admin API to get a list of federated rooms (#11658) 2022-01-25 16:11:40 +00:00
ui_auth.py Add some type hints to datastore (#12485) 2022-04-27 13:05:00 +01:00
user_directory.py Mutual rooms: Remove dependency on user directory (#12836) 2022-05-30 10:05:31 +01:00
user_erasure_store.py Annotations for user_erasure_store (#11313) 2021-11-11 19:22:19 +00:00