lib/config: Improve clarity of free space errors (fixes #8180) (#8191)

This commit is contained in:
Jakob Borg
2022-02-24 17:07:51 +01:00
committed by GitHub
parent 10f9d95cd2
commit f890fe6fd3
4 changed files with 12 additions and 10 deletions
+5 -5
View File
@@ -83,10 +83,10 @@ func CheckFreeSpace(minFree Size, usage fs.Usage) error {
if minFree.Percentage() {
freePct := (float64(usage.Free) / float64(usage.Total)) * 100
if freePct < val {
return fmt.Errorf("%.1f %% < %v", freePct, minFree)
return fmt.Errorf("current %.2f %% < required %v", freePct, minFree)
}
} else if float64(usage.Free) < val {
return fmt.Errorf("%sB < %v", formatSI(usage.Free), minFree)
return fmt.Errorf("current %sB < required %v", formatSI(usage.Free), minFree)
}
return nil
@@ -94,12 +94,12 @@ func CheckFreeSpace(minFree Size, usage fs.Usage) error {
// checkAvailableSpace checks that the free space does not fall below the minimum
// required free space, considering additional required space for a future operation.
func checkAvailableSpace(req uint64, minFree Size, usage fs.Usage) bool {
func checkAvailableSpace(req uint64, minFree Size, usage fs.Usage) error {
if usage.Free < req {
return false
return fmt.Errorf("current %sB < required %sB", formatSI(usage.Free), formatSI(req))
}
usage.Free -= req
return CheckFreeSpace(minFree, usage) == nil
return CheckFreeSpace(minFree, usage)
}
func formatSI(b uint64) string {