diff options
author | Massimiliano Culpo <massimiliano.culpo@gmail.com> | 2020-09-11 19:57:29 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-09-11 10:57:29 -0700 |
commit | 8ad2cc2acfc2374c9b6bc01cd2f1c8eb97f7c7f0 (patch) | |
tree | 57c55d85a35e2a24c922f26523d147d36cd5301e /var | |
parent | e7040467f22e919b3954b8f43f09d37165bd8bf0 (diff) | |
download | spack-8ad2cc2acfc2374c9b6bc01cd2f1c8eb97f7c7f0.tar.gz spack-8ad2cc2acfc2374c9b6bc01cd2f1c8eb97f7c7f0.tar.bz2 spack-8ad2cc2acfc2374c9b6bc01cd2f1c8eb97f7c7f0.tar.xz spack-8ad2cc2acfc2374c9b6bc01cd2f1c8eb97f7c7f0.zip |
Environments: Avoid inconsistent state on failed write (#18538)
Fixes #18441
When writing an environment, there are cases where the lock file for
the environment may be removed. In this case there was a period
between removing the lock file and writing the new manifest file
where an exception could leave the manifest in its old state (in
which case the lock and manifest would be out of sync).
This adds a context manager which is used to restore the prior lock
file state in cases where the manifest file cannot be written.
Diffstat (limited to 'var')
0 files changed, 0 insertions, 0 deletions