MatrixSynapse/changelog.d
Eric Eastwood 0f971ca68e
Update `get_pdu` to return the original, pristine `EventBase` (#13320)
Update `get_pdu` to return the untouched, pristine `EventBase` as it was originally seen over federation (no metadata added). Previously, we returned the same `event` reference that we stored in the cache which downstream code modified in place and added metadata like setting it as an `outlier`  and essentially poisoned our cache. Now we always return a copy of the `event` so the original can stay pristine in our cache and re-used for the next cache call.

Split out from https://github.com/matrix-org/synapse/pull/13205

As discussed at:

 - https://github.com/matrix-org/synapse/pull/13205#discussion_r918365746
 - https://github.com/matrix-org/synapse/pull/13205#discussion_r918366125

Related to https://github.com/matrix-org/synapse/issues/12584. This PR doesn't fix that issue because it hits [`get_event` which exists from the local database before it tries to `get_pdu`](7864f33e28/synapse/federation/federation_client.py (L581-L594)).
2022-07-20 15:58:51 -05:00
..
.gitignore
12942.misc Use READ COMMITTED isolation level when purging rooms (#12942) 2022-07-18 14:17:24 +01:00
12943.misc Rip out auth-event reconciliation code (#12943) 2022-07-14 21:52:26 +00:00
12967.removal Drop unused tables from groups/communities. (#12967) 2022-07-13 09:55:14 -04:00
13038.feature Provide more info why we don't have any thumbnails to serve (#13038) 2022-07-15 11:42:21 -05:00
13094.misc
13172.misc Up the dependency on canonicaljson to ^1.5.0 (#13172) 2022-07-18 17:30:59 +02:00
13175.misc Add prometheus counters for content types other than events (#13175) 2022-07-13 15:18:20 +01:00
13192.removal
13198.misc Reduce duplicate code in receipts servlets. (#13198) 2022-07-13 13:23:16 -04:00
13208.feature
13215.misc Bg update to populate new `events` table columns (#13215) 2022-07-15 12:47:26 +01:00
13218.misc Drop unused table `event_reference_hashes` (#13218) 2022-07-12 18:52:06 +00:00
13220.feature Add support for room version 10 (#13220) 2022-07-13 11:36:02 -07:00
13224.misc Optimise room creation event lookups part 2 (#13224) 2022-07-13 19:32:46 +01:00
13231.doc Document advising against publicly exposing the Admin API and provide a usage example (#13231) 2022-07-13 19:33:33 +01:00
13233.doc Inline URL preview documentation. (#13261) 2022-07-12 15:01:58 -04:00
13239.removal Drop support for calling `/_matrix/client/v3/account/3pid/bind` without an `id_access_token` (#13239) 2022-07-12 18:48:29 +00:00
13240.misc Call the v2 identity service `/3pid/unbind` endpoint, rather than v1. (#13240) 2022-07-13 19:43:17 +01:00
13242.misc Async get event cache prep (#13242) 2022-07-15 09:30:46 +00:00
13251.misc Federation Sender & Appservice Pusher Stream Optimisations (#13251) 2022-07-15 09:36:56 +01:00
13253.misc Allow rate limiters to passively record actions they cannot limit (#13253) 2022-07-13 19:09:42 +00:00
13254.misc Notifier: accept callbacks to fire on room joins (#13254) 2022-07-13 19:48:24 +01:00
13255.misc
13257.misc
13258.misc Fix spurious warning when fetching state after a missing prev event (#13258) 2022-07-19 19:15:54 +01:00
13260.misc Use a real room in the notification rotation tests. (#13260) 2022-07-15 08:22:43 -04:00
13261.doc Inline URL preview documentation. (#13261) 2022-07-12 15:01:58 -04:00
13263.bugfix Fix "add user" admin api error when request contains a "msisdn" threepid (#13263) 2022-07-13 11:33:21 +01:00
13266.misc Do not fail build if complement with workers fails. (#13266) 2022-07-13 08:30:42 -04:00
13267.misc Don't pull out state in `compute_event_context` for unconflicted state (#13267) 2022-07-14 13:57:02 +00:00
13270.bugfix Use state before join to determine if we `_should_perform_remote_join` (#13270) 2022-07-15 12:20:47 +00:00
13271.doc Bash script for creating multiple stream writers (#13271) 2022-07-19 12:37:20 +00:00
13274.misc Don't pull out the full state when storing state (#13274) 2022-07-15 12:59:45 +00:00
13276.feature Rate limit joins per-room (#13276) 2022-07-19 11:45:17 +00:00
13278.bugfix Fix a bug which could lead to incorrect state (#13278) 2022-07-15 11:06:41 +00:00
13279.misc Docker: copy postgres from base image (#13279) 2022-07-15 11:13:40 +01:00
13281.misc Don't pull out the full state when creating an event (#13281) 2022-07-18 10:05:30 +01:00
13284.misc Update locked frozendict version to 2.3.2 (#13284) 2022-07-15 13:18:51 +01:00
13285.misc Use and recommend poetry 1.1.14, up from 1.1.12 (#13285) 2022-07-15 16:18:47 +01:00
13296.bugfix Fix overcounting of pushers when they are replaced (#13296) 2022-07-18 17:39:39 +01:00
13297.misc Use HTTPStatus constants in place of literals in tests. (#13297) 2022-07-15 19:31:27 +00:00
13299.misc Improve performance of query ` _get_subset_users_in_room_with_profiles` (#13299) 2022-07-18 12:35:45 -07:00
13300.misc Increase batch size of `bulk_get_push_rules` and `_get_joined_profiles_from_event_ids`. (#13300) 2022-07-18 13:15:23 -07:00
13303.misc Remove unnecessary `json.dumps` from tests (#13303) 2022-07-17 22:28:45 +01:00
13307.misc Update expected DB query count when creating a room (#13307) 2022-07-18 13:02:25 +01:00
13308.misc Safe async event cache (#13308) 2022-07-19 11:25:29 +00:00
13310.misc Don't pull out full state when sending dummy events (#13310) 2022-07-18 14:19:11 +01:00
13311.misc Prevent #3679 from appearing in blame results (#13311) 2022-07-18 14:02:32 +00:00
13314.doc Add notes when config options were changed to config documentation (#13314) 2022-07-19 12:36:29 +00:00
13318.misc Validate federation destinations and log an error if server name is invalid. (#13318) 2022-07-20 11:17:26 -07:00
13320.misc Update `get_pdu` to return the original, pristine `EventBase` (#13320) 2022-07-20 15:58:51 -05:00
13323.misc Reduce memory usage of state group cache (#13323) 2022-07-19 14:40:37 +01:00
13326.removal Stop building Ubuntu 21.10 (Impish Indri) which is end of life. (#13326) 2022-07-19 09:08:46 -04:00
13328.misc Add type annotations to `trace` decorator. (#13328) 2022-07-19 14:14:30 -04:00