fix bug deleting volume or unmount volume if a volume server has multiple directories

This commit is contained in:
chrislu 2022-04-19 22:58:57 -07:00
parent 0a137e675d
commit 8e9ad7db5a

View file

@ -434,10 +434,13 @@ func (s *Store) UnmountVolume(i needle.VolumeId) error {
} }
for _, location := range s.Locations { for _, location := range s.Locations {
if err := location.UnloadVolume(i); err == nil || err == ErrVolumeNotFound { err := location.UnloadVolume(i)
if err == nil {
glog.V(0).Infof("UnmountVolume %d", i) glog.V(0).Infof("UnmountVolume %d", i)
s.DeletedVolumesChan <- message s.DeletedVolumesChan <- message
return nil return nil
} else if err == ErrVolumeNotFound {
continue
} }
} }
@ -458,10 +461,13 @@ func (s *Store) DeleteVolume(i needle.VolumeId) error {
DiskType: string(v.location.DiskType), DiskType: string(v.location.DiskType),
} }
for _, location := range s.Locations { for _, location := range s.Locations {
if err := location.DeleteVolume(i); err == nil || err == ErrVolumeNotFound { err := location.DeleteVolume(i)
if err == nil {
glog.V(0).Infof("DeleteVolume %d", i) glog.V(0).Infof("DeleteVolume %d", i)
s.DeletedVolumesChan <- message s.DeletedVolumesChan <- message
return nil return nil
} else if err == ErrVolumeNotFound {
continue
} else { } else {
glog.Errorf("DeleteVolume %d: %v", i, err) glog.Errorf("DeleteVolume %d: %v", i, err)
} }