summary refs log tree commit diff
path: root/synapse/storage/devices.py
diff options
context:
space:
mode:
authorRichard van der Hoff <richard@matrix.org>2019-10-18 10:11:40 +0100
committerRichard van der Hoff <richard@matrix.org>2019-10-18 10:11:40 +0100
commit80003dfcd503a72cb4da515b17c3765faccc2ce6 (patch)
tree448fc279a9278566283721bb6a0c86f17efdbd36 /synapse/storage/devices.py
parentchangelog (diff)
parentRemove dead changelog file (diff)
downloadsynapse-80003dfcd503a72cb4da515b17c3765faccc2ce6.tar.xz
Merge remote-tracking branch 'origin/develop' into rav/event_auth/1
Diffstat (limited to 'synapse/storage/devices.py')
-rw-r--r--synapse/storage/devices.py14
1 files changed, 11 insertions, 3 deletions
diff --git a/synapse/storage/devices.py b/synapse/storage/devices.py
index 111bfb3d64..ac5239e50a 100644
--- a/synapse/storage/devices.py
+++ b/synapse/storage/devices.py
@@ -28,7 +28,12 @@ from synapse.logging.opentracing import (
     whitelisted_homeserver,
 )
 from synapse.metrics.background_process_metrics import run_as_background_process
-from synapse.storage._base import Cache, SQLBaseStore, db_to_json
+from synapse.storage._base import (
+    Cache,
+    SQLBaseStore,
+    db_to_json,
+    make_in_list_sql_clause,
+)
 from synapse.storage.background_updates import BackgroundUpdateStore
 from synapse.util import batch_iter
 from synapse.util.caches.descriptors import cached, cachedInlineCallbacks, cachedList
@@ -448,11 +453,14 @@ class DeviceWorkerStore(SQLBaseStore):
             sql = """
                 SELECT DISTINCT user_id FROM device_lists_stream
                 WHERE stream_id > ?
-                AND user_id IN (%s)
+                AND
             """
 
             for chunk in batch_iter(to_check, 100):
-                txn.execute(sql % (",".join("?" for _ in chunk),), (from_key,) + chunk)
+                clause, args = make_in_list_sql_clause(
+                    txn.database_engine, "user_id", chunk
+                )
+                txn.execute(sql + clause, (from_key,) + tuple(args))
                 changes.update(user_id for user_id, in txn)
 
             return changes