aboutsummaryrefslogtreecommitdiff
path: root/src/libstore/build.cc
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2012-09-12 18:49:35 -0400
committerEelco Dolstra <eelco.dolstra@logicblox.com>2012-09-12 18:49:35 -0400
commit4fca02077c4cdea13d32b4665e817460f6502726 (patch)
tree4a1d8efa937a4a62ea68c04a2fecdb473ad1a343 /src/libstore/build.cc
parent479e9172b3583cedcada90ed193cab156cdc56b5 (diff)
Handle gc-keep-outputs and gc-keep-derivations both enabled
If the options gc-keep-outputs and gc-keep-derivations are both enabled, you can get a cycle in the liveness graph. There was a hack to handle this, but it didn't work with multiple-output derivations, causing the garbage collector to fail with errors like ‘error: cannot delete path `...' because it is in use by `...'’. The garbage collector now handles strongly connected components in the liveness graph as a unit and decides whether to delete all or none of the paths in an SCC.
Diffstat (limited to 'src/libstore/build.cc')
0 files changed, 0 insertions, 0 deletions