summary refs log tree commit diff
path: root/synapse/storage/client_ips.py
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2019-01-24 18:52:34 +0000
committerErik Johnston <erik@matrix.org>2019-01-24 18:52:34 +0000
commitefb8ed1d453fc9f76f9e9225532281963b7ea53c (patch)
tree62626873812dfce5f24b556b406b47a47159b214 /synapse/storage/client_ips.py
parentReplace missed usages of FrozenEvent (diff)
parentMerge pull request #4448 from matrix-org/erikj/get_pdu_versions (diff)
downloadsynapse-efb8ed1d453fc9f76f9e9225532281963b7ea53c.tar.xz
Merge branch 'develop' of github.com:matrix-org/synapse into erikj/require_format_version
Diffstat (limited to 'synapse/storage/client_ips.py')
-rw-r--r--synapse/storage/client_ips.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/synapse/storage/client_ips.py b/synapse/storage/client_ips.py
index b228a20ac2..091d7116c5 100644
--- a/synapse/storage/client_ips.py
+++ b/synapse/storage/client_ips.py
@@ -257,7 +257,10 @@ class ClientIpStore(background_updates.BackgroundUpdateStore):
         )
 
     def _update_client_ips_batch_txn(self, txn, to_update):
-        self.database_engine.lock_table(txn, "user_ips")
+        if "user_ips" in self._unsafe_to_upsert_tables or (
+            not self.database_engine.can_native_upsert
+        ):
+            self.database_engine.lock_table(txn, "user_ips")
 
         for entry in iteritems(to_update):
             (user_id, access_token, ip), (user_agent, device_id, last_seen) = entry