summary refs log tree commit diff
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2024-07-11 13:56:27 +0100
committerErik Johnston <erik@matrix.org>2024-07-11 13:56:27 +0100
commit7b50e6024d473e1de713b0a92b710597e4f7b8bc (patch)
tree505104f4df2e15414f53f2adcc6872cc02cd92a9
parentTracing (diff)
downloadsynapse-7b50e6024d473e1de713b0a92b710597e4f7b8bc.tar.xz
Fixup
-rw-r--r--synapse/storage/databases/main/stream.py13
1 files changed, 8 insertions, 5 deletions
diff --git a/synapse/storage/databases/main/stream.py b/synapse/storage/databases/main/stream.py
index f5645dbbff..ec0a2d4d16 100644
--- a/synapse/storage/databases/main/stream.py
+++ b/synapse/storage/databases/main/stream.py
@@ -2057,12 +2057,15 @@ class StreamWorkerStore(EventsWorkerStore, SQLBaseStore):
 
         def _sliding_sync_room_metadata_bg_update_txn(txn: LoggingTransaction) -> int:
             sql = """
-                SELECT room_id, MAX(stream_ordering) FROM rooms
-                INNER JOIN events USING (room_id)
-                WHERE room_id > ? AND stream_ordering IS NOT NULL
+                SELECT room_id, MAX(stream_ordering) FROM events
+                WHERE stream_ordering IS NOT NULL
+                    AND room_id IN (
+                        SELECT room_id FROM rooms
+                        WHERE room_id > ?
+                        ORDER BY room_id ASC
+                        LIMIT ?
+                    )
                 GROUP BY room_id
-                ORDER BY room_id ASC
-                LIMIT ?
             """
             txn.execute(sql, (previous_room, batch_size))
             rows = txn.fetchall()