mirror of
https://github.com/NixOS/nix
synced 2025-06-28 22:01:15 +02:00
* Get derivation outputs from the database instead of the .drv file,
which requires more I/O.
This commit is contained in:
parent
103cfee056
commit
c4d388add4
7 changed files with 46 additions and 8 deletions
|
@ -31,10 +31,10 @@ void computeFSClosure(const Path & storePath,
|
|||
store->queryReferences(storePath, references);
|
||||
|
||||
if (includeOutputs && isDerivation(storePath)) {
|
||||
Derivation drv = derivationFromPath(storePath);
|
||||
foreach (DerivationOutputs::iterator, i, drv.outputs)
|
||||
if (store->isValidPath(i->second.path))
|
||||
computeFSClosure(i->second.path, paths, flipDirection, true);
|
||||
PathSet outputs = store->queryDerivationOutputs(storePath);
|
||||
foreach (PathSet::iterator, i, outputs)
|
||||
if (store->isValidPath(*i))
|
||||
computeFSClosure(*i, paths, flipDirection, true);
|
||||
}
|
||||
|
||||
foreach (PathSet::iterator, i, references)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue