summary refs log tree commit diff
diff options
context:
space:
mode:
authorDavid Robertson <davidr@element.io>2022-10-13 18:32:16 +0100
committerGitHub <noreply@github.com>2022-10-13 17:32:16 +0000
commit16c5d95b594e4fe146947c4848057ebe0b9f900b (patch)
tree95901c3245fa9d2bc46f98348f2c423a524ffc29
parentFixup changelog (diff)
downloadsynapse-16c5d95b594e4fe146947c4848057ebe0b9f900b.tar.xz
Optimise the event_push_backfill_thread_id bg job (#14172)
Co-authored-by: Erik Johnston <erik@matrix.org>
-rw-r--r--changelog.d/14172.bugfix1
-rw-r--r--synapse/storage/databases/main/event_push_actions.py10
2 files changed, 9 insertions, 2 deletions
diff --git a/changelog.d/14172.bugfix b/changelog.d/14172.bugfix
new file mode 100644

index 0000000000..36521c670c --- /dev/null +++ b/changelog.d/14172.bugfix
@@ -0,0 +1 @@ +Fix poor performance of the `event_push_backfill_thread_id` background update, which was introduced in Synapse 1.68.0rc1. diff --git a/synapse/storage/databases/main/event_push_actions.py b/synapse/storage/databases/main/event_push_actions.py
index 87d07f7d9b..7f7bcb7094 100644 --- a/synapse/storage/databases/main/event_push_actions.py +++ b/synapse/storage/databases/main/event_push_actions.py
@@ -297,9 +297,15 @@ class EventPushActionsWorkerStore(ReceiptsWorkerStore, StreamWorkerStore, SQLBas sql = f""" UPDATE {table_name} SET thread_id = 'main' - WHERE stream_ordering <= ? AND thread_id IS NULL + WHERE ? < stream_ordering AND stream_ordering <= ? AND thread_id IS NULL """ - txn.execute(sql, (max_stream_ordering,)) + txn.execute( + sql, + ( + start_stream_ordering, + max_stream_ordering, + ), + ) # Update progress. processed_rows = txn.rowcount