Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Commit

Permalink
Do not wait for full state when creating events to send
Browse files Browse the repository at this point in the history
Signed-off-by: Mathieu Velten <mathieuv@matrix.org>
  • Loading branch information
Mathieu Velten committed Nov 10, 2022
1 parent d85cba1 commit 0a3fcb7
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 1 deletion.
1 change: 1 addition & 0 deletions changelog.d/14403.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Faster joins: do not wait for full state when creating events to send.
1 change: 1 addition & 0 deletions synapse/events/builder.py
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,7 @@ async def build(
state_filter=StateFilter.from_types(
auth_types_for_event(self.room_version, self)
),
await_full_state=False,
)
auth_event_ids = self._event_auth_handler.compute_auth_events(
self, state_ids
Expand Down
5 changes: 4 additions & 1 deletion synapse/state/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,7 @@ async def compute_state_after_events(
room_id: str,
event_ids: Collection[str],
state_filter: Optional[StateFilter] = None,
await_full_state: bool = True,
) -> StateMap[str]:
"""Fetch the state after each of the given event IDs. Resolve them and return.
Expand All @@ -206,7 +207,9 @@ async def compute_state_after_events(
holds the resolution of the states after the given event IDs.
"""
logger.debug("calling resolve_state_groups from compute_state_after_events")
ret = await self.resolve_state_groups_for_events(room_id, event_ids)
ret = await self.resolve_state_groups_for_events(
room_id, event_ids, await_full_state
)
return await ret.get_state(self._state_storage_controller, state_filter)

async def get_current_user_ids_in_room(
Expand Down

0 comments on commit 0a3fcb7

Please sign in to comment.