Do not wait for background updates to complete do expire URL cache. (#13657)
Media downloaded as part of a URL preview is normally deleted after two days.
However, while a background database migration is running, the process is
stopped. A long-running database migration can therefore cause the media
store to fill up with old preview files.
This logic was added in #2697 to make sure that we didn't try to run the expiry
without an index on `local_media_repository.created_ts`; the original logic that
needs that index was added in #2478 (in `get_url_cache_media_before`, as
amended by 93247a424a
), and is still present.
Given that the background update was added before Synapse v1.0.0, just drop
this check and assume the index exists.
pull/13666/head
parent
20df96a7a7
commit
303b40b988
|
@ -0,0 +1 @@
|
|||
Fix a long-standing bug that downloaded media for URL previews was not deleted while database background updates were running.
|
|
@ -732,10 +732,6 @@ class PreviewUrlResource(DirectServeJsonResource):
|
|||
|
||||
logger.debug("Running url preview cache expiry")
|
||||
|
||||
if not (await self.store.db_pool.updates.has_completed_background_updates()):
|
||||
logger.debug("Still running DB updates; skipping url preview cache expiry")
|
||||
return
|
||||
|
||||
def try_remove_parent_dirs(dirs: Iterable[str]) -> None:
|
||||
"""Attempt to remove the given chain of parent directories
|
||||
|
||||
|
|
Loading…
Reference in New Issue