Browse Source

Division by zero if capacity is 0 produces Inf.

pull/8026/head
Konstantin Lebedev 4 weeks ago
parent
commit
4e9b2adf86
  1. 6
      weed/shell/command_volume_balance.go

6
weed/shell/command_volume_balance.go

@ -349,6 +349,9 @@ func capacityByFreeVolumeCount(diskType types.DiskType, volumeSizeLimitMb uint64
func (n *Node) localVolumeRatio(capacityFunc CapacityFunc) float64 {
capacity, used, isDensityBased := capacityFunc(n.info)
if capacity == 0 {
return 0
}
if isDensityBased {
return float64(used) / capacity
}
@ -357,6 +360,9 @@ func (n *Node) localVolumeRatio(capacityFunc CapacityFunc) float64 {
func (n *Node) localVolumeNextRatio(capacityFunc CapacityFunc) float64 {
capacity, used, isDensityBased := capacityFunc(n.info)
if capacity == 0 {
return 0
}
if isDensityBased {
return float64(used+1) / capacity
}

Loading…
Cancel
Save