diff options
author | Harmen Stoppels <harmenstoppels@gmail.com> | 2022-07-12 17:03:48 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-12 15:03:48 +0000 |
commit | ea91e8f4ca1790598906a0363d9f90852f9a74d3 (patch) | |
tree | 7201cd8aff1037607ad92debd9c1ab3c1345f3c6 /share | |
parent | 74e2625dcf61639fa6d63892115eb4ab35b85e58 (diff) | |
download | spack-ea91e8f4ca1790598906a0363d9f90852f9a74d3.tar.gz spack-ea91e8f4ca1790598906a0363d9f90852f9a74d3.tar.bz2 spack-ea91e8f4ca1790598906a0363d9f90852f9a74d3.tar.xz spack-ea91e8f4ca1790598906a0363d9f90852f9a74d3.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 'share')
0 files changed, 0 insertions, 0 deletions