summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--changelog.d/11583.bugfix1
-rw-r--r--synapse/rest/client/sync.py8
2 files changed, 8 insertions, 1 deletions
diff --git a/changelog.d/11583.bugfix b/changelog.d/11583.bugfix
new file mode 100644

index 0000000000..d2ed113e21 --- /dev/null +++ b/changelog.d/11583.bugfix
@@ -0,0 +1 @@ +Fix a performance regression in `/sync` handling, introduced in 1.49.0. 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,