summary refs log tree commit diff
path: root/synapse/handlers/device.py
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2022-12-09 13:31:32 +0000
committerGitHub <noreply@github.com>2022-12-09 13:31:32 +0000
commit94bc21e69f89ad873ad7a0deb6d9c4ff3cb480ef (patch)
tree8229c53299764f5efd515453cc8528a6ace9b044 /synapse/handlers/device.py
parentDelete stale non-e2e devices for users, take 2 (#14595) (diff)
downloadsynapse-94bc21e69f89ad873ad7a0deb6d9c4ff3cb480ef.tar.xz
Limit the number of devices we delete at once (#14649)
Diffstat (limited to 'synapse/handlers/device.py')
-rw-r--r--synapse/handlers/device.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/synapse/handlers/device.py b/synapse/handlers/device.py
index 7674c187ef..c935c7be90 100644
--- a/synapse/handlers/device.py
+++ b/synapse/handlers/device.py
@@ -458,10 +458,12 @@ class DeviceHandler(DeviceWorkerHandler):
 
     async def _prune_too_many_devices(self, user_id: str) -> None:
         """Delete any excess old devices this user may have."""
-        device_ids = await self.store.check_too_many_devices_for_user(user_id)
+        device_ids = await self.store.check_too_many_devices_for_user(user_id, 100)
         if not device_ids:
             return
 
+        logger.info("Pruning %d old devices for user %s", len(device_ids), user_id)
+
         # We don't want to block and try and delete tonnes of devices at once,
         # so we cap the number of devices we delete synchronously.
         first_batch, remaining_device_ids = device_ids[:10], device_ids[10:]