Browse Source
daemon: Fix the displayed GC estimated progress.
* nix/libstore/gc.cc (LocalStore::deletePathRecursive): Fix computation
of 'fraction'. Take 'bytesInvalidated' into account.
guile-daemon
Ludovic Courtès
3 years ago
No known key found for this signature in database
GPG Key ID: 90B11993D9AEBB5
1 changed files with
5 additions and
4 deletions
-
nix/libstore/gc.cc
|
|
@ -426,13 +426,14 @@ void LocalStore::deletePathRecursive(GCState & state, const Path & path) |
|
|
|
} |
|
|
|
|
|
|
|
if (state.options.maxFreed != ULLONG_MAX) { |
|
|
|
double fraction = state.results.bytesFreed + size |
|
|
|
/ state.options.maxFreed; |
|
|
|
auto freed = state.results.bytesFreed + state.bytesInvalidated; |
|
|
|
double fraction = ((double) freed) / (double) state.options.maxFreed; |
|
|
|
unsigned int percentage = (fraction > 1. ? 1. : fraction) * 100.; |
|
|
|
printMsg(lvlInfo, format("[%1%%%] deleting '%2%'") % percentage % path); |
|
|
|
} else { |
|
|
|
size_t total = (state.results.bytesFreed + size) / (1024 * 1024); |
|
|
|
printMsg(lvlInfo, format("[%1% MiB] deleting '%2%'") % total % path); |
|
|
|
auto freed = state.results.bytesFreed + state.bytesInvalidated; |
|
|
|
freed /= 1024ULL * 1024ULL; |
|
|
|
printMsg(lvlInfo, format("[%1% MiB] deleting '%2%'") % freed % path); |
|
|
|
} |
|
|
|
|
|
|
|
state.results.paths.insert(path); |
|
|
|