volume: sync to disk before copying volume files

address https://github.com/chrislusf/seaweedfs/issues/2976
This commit is contained in:
chrislu
2022-04-26 13:03:43 -07:00
parent 3bce568c32
commit 94f824e1ce
2 changed files with 16 additions and 0 deletions

View File

@@ -279,6 +279,7 @@ func (vs *VolumeServer) CopyFile(req *volume_server_pb.CopyFileRequest, stream v
if uint32(v.CompactionRevision) != req.CompactionRevision && req.CompactionRevision != math.MaxUint32 {
return fmt.Errorf("volume %d is compacted", req.VolumeId)
}
v.SyncToDisk()
fileName = v.FileName(req.Ext)
} else {
baseFileName := erasure_coding.EcShardBaseFileName(req.Collection, int(req.VolumeId)) + req.Ext