diff options
-rw-r--r-- | src/libstore/gc.cc | 6 |
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()) |