diff options
author | Erik Johnston <erikj@element.io> | 2024-01-08 14:06:48 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-08 14:06:48 +0000 |
commit | 5d3850b0384c7da286031b169d9a37320b6783ea (patch) | |
tree | 5300ed0d40538d25f32cf8666966907a60e70165 /synapse/federation | |
parent | Fix linting (#16780) (diff) | |
download | synapse-5d3850b0384c7da286031b169d9a37320b6783ea.tar.xz |
Port `EventInternalMetadata` class to Rust (#16782)
There are a couple of things we need to be careful of here: 1. The current python code does no validation when loading from the DB, so we need to be careful to ignore such errors (at least on jki.re there are some old events with internal metadata fields of the wrong type). 2. We want to be memory efficient, as we often have many hundreds of thousands of events in the cache at a time. --------- Co-authored-by: Quentin Gliech <quenting@element.io>
Diffstat (limited to 'synapse/federation')
-rw-r--r-- | synapse/federation/federation_client.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/synapse/federation/federation_client.py b/synapse/federation/federation_client.py index c412063091..e3679d8f37 100644 --- a/synapse/federation/federation_client.py +++ b/synapse/federation/federation_client.py @@ -1155,7 +1155,7 @@ class FederationClient(FederationBase): # NB: We *need* to copy to ensure that we don't have multiple # references being passed on, as that causes... issues. for s in signed_state: - s.internal_metadata = copy.deepcopy(s.internal_metadata) + s.internal_metadata = s.internal_metadata.copy() # double-check that the auth chain doesn't include a different create event auth_chain_create_events = [ |