Remove Generator in update_cached_last_access_time (#17816)

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
This commit is contained in:
Jason Little 2024-10-30 20:16:24 -05:00 committed by GitHub
parent 2e5fe3f187
commit 0c429fae1d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 4 additions and 3 deletions

1
changelog.d/17816.bugfix Normal file
View file

@ -0,0 +1 @@
Avoid lost data on some database query retries.

View file

@ -729,10 +729,10 @@ class MediaRepositoryStore(MediaRepositoryBackgroundUpdateStore):
txn.execute_batch( txn.execute_batch(
sql, sql,
( [
(time_ms, media_origin, media_id) (time_ms, media_origin, media_id)
for media_origin, media_id in remote_media for media_origin, media_id in remote_media
), ],
) )
sql = ( sql = (
@ -740,7 +740,7 @@ class MediaRepositoryStore(MediaRepositoryBackgroundUpdateStore):
" WHERE media_id = ?" " WHERE media_id = ?"
) )
txn.execute_batch(sql, ((time_ms, media_id) for media_id in local_media)) txn.execute_batch(sql, [(time_ms, media_id) for media_id in local_media])
await self.db_pool.runInteraction( await self.db_pool.runInteraction(
"update_cached_last_access_time", update_cache_txn "update_cached_last_access_time", update_cache_txn