diff options
author | Ludovic Courtès <ludo@gnu.org> | 2024-07-16 11:03:16 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2024-08-21 00:52:39 +0200 |
commit | d921c742b774a9f0a016f3db6442d5c58a330c92 (patch) | |
tree | 398620edbdfe9b97e25c157790bfca6166b58fde /gnu | |
parent | 96cd163c14e68c66c6a4cf0b18261fc454f8c1ba (diff) | |
download | guix-d921c742b774a9f0a016f3db6442d5c58a330c92.tar.gz guix-d921c742b774a9f0a016f3db6442d5c58a330c92.zip |
cache: Avoid cache cleanup storms from concurrent processes.
Reported by Christopher Baines <guix@cbaines.net>.
* guix/cache.scm (maybe-remove-expired-cache-entries): Define
‘expiry-port’; create it with ‘lock-file’. Change ‘last-expiry-date’
accordingly. Write timestamp straight to ‘expiry-port’.
* tests/cache.scm ("maybe-remove-expired-cache-entries, cleanup needed
but lock taken"): New test.
Change-Id: I22441d9d2c4a339d3d3878de131864db5a0ae826
Diffstat (limited to 'gnu')
0 files changed, 0 insertions, 0 deletions