about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2008-06-14T16·02+0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2008-06-14T16·02+0000
commit94fd46fa1c4655a609b3a67bef447c9547eb5080 (patch)
tree13c8225b312f92264621d97b41de1d0017f0f1fb
parent955b8841cd2a32afd7f2be56b198ce4d163f3b46 (diff)
* Note.
-rw-r--r--src/libstore/gc.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/libstore/gc.cc b/src/libstore/gc.cc
index b30f78b33035..c46cc817bc9d 100644
--- a/src/libstore/gc.cc
+++ b/src/libstore/gc.cc
@@ -123,7 +123,11 @@ Path addPermRoot(const Path & _storePath, const Path & _gcRoot,
         createSymlink(gcRoot, storePath, false);
     }
 
-    /* Check that the root can be found by the garbage collector. */
+    /* Check that the root can be found by the garbage collector.
+       !!! This can be very slow on machines that have many roots.
+       Instead of reading all the roots, it would be more efficient to
+       check if the root is in a directory in or linked from the
+       gcroots directory. */
     if (queryBoolSetting("gc-check-reachability", true)) {
         Roots roots = store->findRoots();
         if (roots.find(gcRoot) == roots.end())