This commit is contained in:
Chris Lu 2014-10-25 18:10:32 -07:00
parent b85eb293fe
commit 30bcda7136
3 changed files with 4 additions and 4 deletions

View file

@ -109,7 +109,7 @@ func (t *Topology) NextVolumeId() storage.VolumeId {
return next return next
} }
func (t *Topology) HasWriableVolume(option *VolumeGrowOption) bool { func (t *Topology) hasWritableVolume(option *VolumeGrowOption) bool {
vl := t.GetVolumeLayout(option.Collection, option.ReplicaPlacement, option.Ttl) vl := t.GetVolumeLayout(option.Collection, option.ReplicaPlacement, option.Ttl)
return vl.GetActiveVolumeCount(option) > 0 return vl.GetActiveVolumeCount(option) > 0
} }

View file

@ -78,7 +78,7 @@ func (ms *MasterServer) dirAssignHandler(w http.ResponseWriter, r *http.Request)
return return
} }
if !ms.Topo.HasWriableVolume(option) { if !ms.Topo.hasWritableVolume(option) {
if ms.Topo.FreeSpace() <= 0 { if ms.Topo.FreeSpace() <= 0 {
w.WriteHeader(http.StatusNotFound) w.WriteHeader(http.StatusNotFound)
writeJsonQuiet(w, r, operation.AssignResult{Error: "No free volumes left!"}) writeJsonQuiet(w, r, operation.AssignResult{Error: "No free volumes left!"})
@ -86,7 +86,7 @@ func (ms *MasterServer) dirAssignHandler(w http.ResponseWriter, r *http.Request)
} else { } else {
ms.vgLock.Lock() ms.vgLock.Lock()
defer ms.vgLock.Unlock() defer ms.vgLock.Unlock()
if !ms.Topo.HasWriableVolume(option) { if !ms.Topo.hasWritableVolume(option) {
if _, err = ms.vg.AutomaticGrowByType(option, ms.Topo); err != nil { if _, err = ms.vg.AutomaticGrowByType(option, ms.Topo); err != nil {
writeJsonQuiet(w, r, operation.AssignResult{Error: "Cannot grow volume group! " + err.Error()}) writeJsonQuiet(w, r, operation.AssignResult{Error: "Cannot grow volume group! " + err.Error()})
return return

View file

@ -143,7 +143,7 @@ func (ms *MasterServer) deleteFromMasterServerHandler(w http.ResponseWriter, r *
} }
} }
func (ms *MasterServer) hasWriableVolume(option *topology.VolumeGrowOption) bool { func (ms *MasterServer) hasWritableVolume(option *topology.VolumeGrowOption) bool {
vl := ms.Topo.GetVolumeLayout(option.Collection, option.ReplicaPlacement, option.Ttl) vl := ms.Topo.GetVolumeLayout(option.Collection, option.ReplicaPlacement, option.Ttl)
return vl.GetActiveVolumeCount(option) > 0 return vl.GetActiveVolumeCount(option) > 0
} }