daemon: Fix the displayed GC estimated progress.
* nix/libstore/gc.cc (LocalStore::deletePathRecursive): Fix computation of 'fraction'. Take 'bytesInvalidated' into account.master
parent
7033c7692c
commit
be0fb348b8
|
@ -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);
|
||||
|
|
Reference in New Issue