2 files changed, 13 insertions, 3 deletions
diff --git a/synapse/handlers/event_auth.py b/synapse/handlers/event_auth.py
index c508861b6a..272f312fda 100644
--- a/synapse/handlers/event_auth.py
+++ b/synapse/handlers/event_auth.py
@@ -63,9 +63,19 @@ class EventAuthHandler:
self._store, event, batched_auth_events
)
auth_event_ids = event.auth_event_ids()
- auth_events_by_id = await self._store.get_events(auth_event_ids)
+ logger.info("Batched auth events %s", list(batched_auth_events.keys()))
+ logger.info("auth events %s", auth_event_ids)
if batched_auth_events:
- auth_events_by_id.update(batched_auth_events)
+ auth_events_by_id = dict(batched_auth_events)
+ if set(auth_event_ids) - set(batched_auth_events):
+ logger.info("fetching %s", set(auth_event_ids) - set(batched_auth_events))
+ auth_events_by_id.update(
+ await self._store.get_events(
+ set(auth_event_ids) - set(batched_auth_events)
+ )
+ )
+ else:
+ auth_events_by_id = await self._store.get_events(auth_event_ids)
check_state_dependent_auth_rules(event, auth_events_by_id.values())
def compute_auth_events(
diff --git a/synapse/handlers/room.py b/synapse/handlers/room.py
index b1784638f4..c018d24e2e 100644
--- a/synapse/handlers/room.py
+++ b/synapse/handlers/room.py
@@ -1123,7 +1123,7 @@ class RoomCreationHandler:
event_dict,
prev_event_ids=prev_event,
depth=depth,
- state_map=state_map,
+ state_map=dict(state_map),
for_batch=for_batch,
)
|