summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorMassimiliano Culpo <massimiliano.culpo@gmail.com>2023-08-07 12:47:52 +0200
committerGitHub <noreply@github.com>2023-08-07 06:47:52 -0400
commitba1d29502388ba85d9c45df4ac70c8b980a8720d (patch)
treedcc884c2971e2880394976707f74dff2d5e95ba0 /var
parent27f04b35442b5a6b9015f17bab46b7df3371f3fc (diff)
downloadspack-ba1d29502388ba85d9c45df4ac70c8b980a8720d.tar.gz
spack-ba1d29502388ba85d9c45df4ac70c8b980a8720d.tar.bz2
spack-ba1d29502388ba85d9c45df4ac70c8b980a8720d.tar.xz
spack-ba1d29502388ba85d9c45df4ac70c8b980a8720d.zip
Extract prefix locks and failure markers from Database (#39024)
This PR extracts two responsibilities from the `Database` class: 1. Managing locks for prefixes during an installation 2. Marking installation failures and pushes them into their own class (`SpecLocker` and `FailureMarker`). These responsibilities are also pushed up into the `Store`, leaving to `Database` only the duty to manage `index.json` files. `SpecLocker` classes no longer share a global list of locks, but locks are per instance. Their identifier is simply `(dag hash, package name)`, and not the spec prefix path, to avoid circular dependencies across Store / Database / Spec.
Diffstat (limited to 'var')
0 files changed, 0 insertions, 0 deletions