From 066b9f52b80c172eec6074ca01fb24670200fd80 Mon Sep 17 00:00:00 2001
From: Brendan Abolivier <babolivier@matrix.org>
Date: Wed, 15 Jan 2020 19:32:47 +0000
Subject: [PATCH] Correctly order when selecting before stream ordering

---
 synapse/storage/data_stores/main/stream.py | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/synapse/storage/data_stores/main/stream.py b/synapse/storage/data_stores/main/stream.py
index 9fa5e1f203..451f38296b 100644
--- a/synapse/storage/data_stores/main/stream.py
+++ b/synapse/storage/data_stores/main/stream.py
@@ -580,9 +580,12 @@ class StreamWorkerStore(EventsWorkerStore, SQLBaseStore):
             " FROM events"
             " WHERE room_id = ? AND stream_ordering %s ?"
             " AND NOT outlier"
-            " ORDER BY stream_ordering"
+            " ORDER BY stream_ordering %s"
             " LIMIT 1"
-        ) % ("<=" if dir == "b" else ">=",)
+        ) % (
+            "<=" if dir == "b" else ">=",
+            "DESC" if dir == "b" else "ASC",
+        )
         txn.execute(sql, (room_id, stream_ordering))
         return txn.fetchone()
 
-- 
GitLab