Browse Source

protect against possible nil

which is unlikely to happen though
pull/1255/head
Chris Lu 5 years ago
parent
commit
0576a27f44
  1. 6
      weed/topology/store_replicate.go

6
weed/topology/store_replicate.go

@ -154,7 +154,11 @@ func distributedOperation(locations []operation.Location, store *storage.Store,
func getWritableRemoteReplications(s *storage.Store, volumeId needle.VolumeId, masterNode string) ( func getWritableRemoteReplications(s *storage.Store, volumeId needle.VolumeId, masterNode string) (
remoteLocations []operation.Location, err error) { remoteLocations []operation.Location, err error) {
copyCount := s.GetVolume(volumeId).ReplicaPlacement.GetCopyCount()
volume := s.GetVolume(volumeId)
if volume == nil {
return nil, fmt.Errorf("fail to find volume %d", volumeId)
}
copyCount := v.ReplicaPlacement.GetCopyCount()
if copyCount > 1 { if copyCount > 1 {
if lookupResult, lookupErr := operation.Lookup(masterNode, volumeId.String()); lookupErr == nil { if lookupResult, lookupErr := operation.Lookup(masterNode, volumeId.String()); lookupErr == nil {
if len(lookupResult.Locations) < copyCount { if len(lookupResult.Locations) < copyCount {

Loading…
Cancel
Save