diff options
author | Erik Johnston <erik@matrix.org> | 2017-04-11 16:24:31 +0100 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2017-04-11 16:24:31 +0100 |
commit | 85657eedf8ce54acf0c78e673e58dd33e12c7f75 (patch) | |
tree | 66c24ee93db2d916bac49b732267a10f011bf8c7 /synapse | |
parent | Don't bother with outer check for now (diff) | |
download | synapse-85657eedf8ce54acf0c78e673e58dd33e12c7f75.tar.xz |
Bail on where clause instead
Diffstat (limited to 'synapse')
-rw-r--r-- | synapse/storage/client_ips.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/synapse/storage/client_ips.py b/synapse/storage/client_ips.py index f95921d731..b01f0046e9 100644 --- a/synapse/storage/client_ips.py +++ b/synapse/storage/client_ips.py @@ -90,6 +90,7 @@ class ClientIpStore(background_updates.BackgroundUpdateStore): are (user_id, device_id) tuples. The values are also dicts, with keys giving the column names """ + res = yield self.runInteraction( "get_last_client_ip_by_device", self._get_last_client_ip_by_device_txn, @@ -109,9 +110,6 @@ class ClientIpStore(background_updates.BackgroundUpdateStore): @classmethod def _get_last_client_ip_by_device_txn(cls, txn, devices, retcols): - if not devices: - return [] - where_clauses = [] bindings = [] for (user_id, device_id) in devices: @@ -122,6 +120,9 @@ class ClientIpStore(background_updates.BackgroundUpdateStore): where_clauses.append("(user_id = ? AND device_id = ?)") bindings.extend((user_id, device_id)) + if not where_clauses: + return [] + inner_select = ( "SELECT MAX(last_seen) mls, user_id, device_id FROM user_ips " "WHERE %(where)s " |