summary refs log tree commit diff
path: root/synapse
diff options
context:
space:
mode:
authorRichard van der Hoff <richard@matrix.org>2021-12-15 13:08:24 +0000
committerRichard van der Hoff <richard@matrix.org>2021-12-15 13:10:25 +0000
commita9c146ac53a40d191c0a2b3b1b8f6ceaea0eee79 (patch)
treec16b76d1629f00a456c3ea982b38b2152af0f194 /synapse
parentSort internal changes in changelog (diff)
downloadsynapse-a9c146ac53a40d191c0a2b3b1b8f6ceaea0eee79.tar.xz
Disable aggregation bundling on `/sync` responses
A partial revert of #11478. This turns out to have had a significant CPU impact
on initial-sync handling. For now, let's disable it, until we find a more
efficient way of achieving this.
Diffstat (limited to 'synapse')
-rw-r--r--synapse/rest/client/sync.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/synapse/rest/client/sync.py b/synapse/rest/client/sync.py
index 88e4f5e063..e556ff93e6 100644
--- a/synapse/rest/client/sync.py
+++ b/synapse/rest/client/sync.py
@@ -522,7 +522,13 @@ class SyncRestServlet(RestServlet):
                 time_now=time_now,
                 # Don't bother to bundle aggregations if the timeline is unlimited,
                 # as clients will have all the necessary information.
-                bundle_aggregations=room.timeline.limited,
+                # bundle_aggregations=room.timeline.limited,
+                #
+                # richvdh 2021-12-15: disable this temporarily as it has too high an
+                # overhead for initialsyncs. We need to figure out a way that the
+                # bundling can be done *before* the events are stored in the
+                # SyncResponseCache so that this part can be synchronous.
+                bundle_aggregations=False,
                 token_id=token_id,
                 event_format=event_formatter,
                 only_event_fields=only_fields,