summary refs log tree commit diff
path: root/synapse/events
diff options
context:
space:
mode:
authorTulir Asokan <tulir@maunium.net>2021-11-29 15:13:23 +0200
committerGitHub <noreply@github.com>2021-11-29 13:13:23 +0000
commit7b4e228e415a6ed85bbd6a2fc37f305e1cb81c82 (patch)
tree55e00dd0a1b515831316c9769322af22d23db233 /synapse/events
parentdisallow-untyped-defs for the module_api (#11029) (diff)
downloadsynapse-7b4e228e415a6ed85bbd6a2fc37f305e1cb81c82.tar.xz
Fix using MSC2716 batch sending with event persistence workers (#11220)
Signed-off-by: Tulir Asokan <tulir@beeper.com>
Diffstat (limited to 'synapse/events')
-rw-r--r--synapse/events/snapshot.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/synapse/events/snapshot.py b/synapse/events/snapshot.py
index d7527008c4..f251402ed8 100644
--- a/synapse/events/snapshot.py
+++ b/synapse/events/snapshot.py
@@ -322,6 +322,11 @@ class _AsyncEventContextImpl(EventContext):
         attributes by loading from the database.
         """
         if self.state_group is None:
+            # No state group means the event is an outlier. Usually the state_ids dicts are also
+            # pre-set to empty dicts, but they get reset when the context is serialized, so set
+            # them to empty dicts again here.
+            self._current_state_ids = {}
+            self._prev_state_ids = {}
             return
 
         current_state_ids = await self._storage.state.get_state_ids_for_group(