diff options
Diffstat (limited to 'weed/topology/volume_layout.go')
| -rw-r--r-- | weed/topology/volume_layout.go | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/weed/topology/volume_layout.go b/weed/topology/volume_layout.go index 55827f314..3a360ff99 100644 --- a/weed/topology/volume_layout.go +++ b/weed/topology/volume_layout.go @@ -407,10 +407,10 @@ func (vl *VolumeLayout) removeFromWritable(vid needle.VolumeId) bool { break } } + vl.removeFromCrowded(vid) if toDeleteIndex >= 0 { glog.V(0).Infoln("Volume", vid, "becomes unwritable") vl.writables = append(vl.writables[0:toDeleteIndex], vl.writables[toDeleteIndex+1:]...) - vl.removeFromCrowded(vid) return true } return false @@ -506,7 +506,10 @@ func (vl *VolumeLayout) SetVolumeCapacityFull(vid needle.VolumeId) bool { } func (vl *VolumeLayout) removeFromCrowded(vid needle.VolumeId) { - delete(vl.crowded, vid) + if _, ok := vl.crowded[vid]; ok { + glog.V(0).Infoln("Volume", vid, "becomes uncrowded") + delete(vl.crowded, vid) + } } func (vl *VolumeLayout) setVolumeCrowded(vid needle.VolumeId) { |
