mirror of
https://github.com/NixOS/nix
synced 2025-06-29 06:21:14 +02:00
* Fix and simplify the garbage collector (it's still not concurrent,
though). In particular it's now much easier to register a GC root. Just place a symlink to whatever store path it is that you want to keep in /nix/var/nix/gcroots.
This commit is contained in:
parent
59682e6188
commit
c505702265
10 changed files with 124 additions and 109 deletions
|
@ -458,7 +458,7 @@ void DerivationGoal::haveStoreExpr()
|
|||
i != invalidOutputs.end(); ++i)
|
||||
/* Don't bother creating a substitution goal if there are no
|
||||
substitutes. */
|
||||
if (querySubstitutes(*i).size() > 0)
|
||||
if (querySubstitutes(noTxn, *i).size() > 0)
|
||||
addWaitee(worker.makeSubstitutionGoal(*i));
|
||||
|
||||
if (waitees.empty()) /* to prevent hang (no wake-up event) */
|
||||
|
@ -1315,7 +1315,7 @@ void SubstitutionGoal::init()
|
|||
}
|
||||
|
||||
/* Read the substitutes. */
|
||||
subs = querySubstitutes(storePath);
|
||||
subs = querySubstitutes(noTxn, storePath);
|
||||
|
||||
/* To maintain the closure invairant, we first have to realise the
|
||||
paths referenced by this one. */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue