summary refs log tree commit diff
diff options
context:
space:
mode:
authorJason Little <realtyem@gmail.com>2024-10-30 21:21:22 -0500
committerGitHub <noreply@github.com>2024-10-30 21:21:22 -0500
commit47fe6df0134441211588c0bf8fc8f1f18c489c38 (patch)
treeaa1bbd677b4103d5e95aa984c0013bd74d2ec7be
parentRemove `Generator` in `_purge_unreferenced_state_groups` twice (#17815) (diff)
downloadsynapse-47fe6df0134441211588c0bf8fc8f1f18c489c38.tar.xz
Remove `Generator` in `_prune_old_outbound_device_pokes` (#17814)
Context: https://github.com/matrix-org/synapse/issues/15439
(https://github.com/element-hq/synapse/issues/15439)

Also see discussion in https://github.com/element-hq/synapse/pull/17813
-rw-r--r--changelog.d/17814.bugfix1
-rw-r--r--synapse/storage/databases/main/devices.py2
2 files changed, 2 insertions, 1 deletions
diff --git a/changelog.d/17814.bugfix b/changelog.d/17814.bugfix
new file mode 100644

index 0000000000..5dd276709b --- /dev/null +++ b/changelog.d/17814.bugfix
@@ -0,0 +1 @@ +Avoid lost data on some database query retries. diff --git a/synapse/storage/databases/main/devices.py b/synapse/storage/databases/main/devices.py
index a83df4075a..8088943253 100644 --- a/synapse/storage/databases/main/devices.py +++ b/synapse/storage/databases/main/devices.py
@@ -1422,7 +1422,7 @@ class DeviceWorkerStore(RoomMemberWorkerStore, EndToEndKeyWorkerStore): DELETE FROM device_lists_outbound_last_success WHERE destination = ? AND user_id = ? """ - txn.execute_batch(sql, ((row[0], row[1]) for row in rows)) + txn.execute_batch(sql, [(row[0], row[1]) for row in rows]) logger.info("Pruned %d device list outbound pokes", count)