diff options
Diffstat (limited to 'weed/server/volume_grpc_copy.go')
| -rw-r--r-- | weed/server/volume_grpc_copy.go | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/weed/server/volume_grpc_copy.go b/weed/server/volume_grpc_copy.go index 186c378ef..20778b71f 100644 --- a/weed/server/volume_grpc_copy.go +++ b/weed/server/volume_grpc_copy.go @@ -49,7 +49,7 @@ func (vs *VolumeServer) VolumeCopy(ctx context.Context, req *volume_server_pb.Vo return fmt.Errorf("read volume file status failed, %v", err) } - volumeFileName = storage.VolumeFileName(volFileInfoResp.Collection, location.Directory, int(req.VolumeId)) + volumeFileName = storage.VolumeFileName(location.Directory, volFileInfoResp.Collection, int(req.VolumeId)) // println("source:", volFileInfoResp.String()) // copy ecx file @@ -63,6 +63,10 @@ func (vs *VolumeServer) VolumeCopy(ctx context.Context, req *volume_server_pb.Vo return nil }) + + idxFileName = volumeFileName + ".idx" + datFileName = volumeFileName + ".dat" + if err != nil && volumeFileName != "" { if idxFileName != "" { os.Remove(idxFileName) @@ -117,11 +121,11 @@ todo: maybe should check the received count and deleted count of the volume func checkCopyFiles(originFileInf *volume_server_pb.ReadVolumeFileStatusResponse, idxFileName, datFileName string) error { stat, err := os.Stat(idxFileName) if err != nil { - return fmt.Errorf("get idx file info failed, %v", err) + return fmt.Errorf("stat idx file %s failed, %v", idxFileName, err) } if originFileInf.IdxFileSize != uint64(stat.Size()) { - return fmt.Errorf("the idx file size [%v] is not same as origin file size [%v]", - stat.Size(), originFileInf.IdxFileSize) + return fmt.Errorf("idx file %s size [%v] is not same as origin file size [%v]", + idxFileName, stat.Size(), originFileInf.IdxFileSize) } stat, err = os.Stat(datFileName) |
