From 0576a27f44a2264f39a2cc6bcfe13dcb58dda55a Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Sat, 14 Mar 2020 16:06:03 -0700 Subject: [PATCH] protect against possible nil which is unlikely to happen though --- weed/topology/store_replicate.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/weed/topology/store_replicate.go b/weed/topology/store_replicate.go index 8c4996d45..24c32ef62 100644 --- a/weed/topology/store_replicate.go +++ b/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) ( 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 lookupResult, lookupErr := operation.Lookup(masterNode, volumeId.String()); lookupErr == nil { if len(lookupResult.Locations) < copyCount {