diff options
author | Harmen Stoppels <harmenstoppels@gmail.com> | 2022-07-12 17:03:48 +0200 |
---|---|---|
committer | Massimiliano Culpo <massimiliano.culpo@gmail.com> | 2022-07-20 08:10:41 +0200 |
commit | bff1de69a577b8118b4eb75f987d3f701cff19a2 (patch) | |
tree | 58f3aefd2ab0b3245078f5bf8d90e4f3d87feee4 /bin | |
parent | 44f360556d8258e840d8f280ae21fe86fbc13004 (diff) | |
download | spack-bff1de69a577b8118b4eb75f987d3f701cff19a2.tar.gz spack-bff1de69a577b8118b4eb75f987d3f701cff19a2.tar.bz2 spack-bff1de69a577b8118b4eb75f987d3f701cff19a2.tar.xz spack-bff1de69a577b8118b4eb75f987d3f701cff19a2.zip |
file_cache.py: idempotent remove without races (#31477)
There's a race condition in `remove()` as the lockfile is removed after
releasing the lock, which is a problem when another process acquires a
write lock during deletion.
Also simplify life a bit in multiprocessing when a file is possibly
removed multiple times, which currently is an error on the second
deletion, so the proposed fix is to make remove(...) idempotent and not
error when deleting non-existing cache entries.
Don't tests for existence of lockfile, cause windows/linux behavior is different
Diffstat (limited to 'bin')
0 files changed, 0 insertions, 0 deletions