rustrover
10 months ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with
3 additions and
3 deletions
-
weed/command/master_follower.go
-
weed/server/volume_grpc_copy.go
-
weed/storage/erasure_coding/ec_decoder.go
|
|
@ -52,7 +52,7 @@ var cmdMasterFollower = &Command{ |
|
|
|
In most cases, the master follower is not needed. In big data centers with thousands of volume |
|
|
|
servers. In theory, the master may have trouble to keep up with the write requests and read requests. |
|
|
|
|
|
|
|
The master follower can relieve the master from from read requests, which only needs to |
|
|
|
The master follower can relieve the master from read requests, which only needs to |
|
|
|
lookup a fileId or volumeId. |
|
|
|
|
|
|
|
The master follower currently can handle fileId lookup requests: |
|
|
|
|
|
@ -226,7 +226,7 @@ func (vs *VolumeServer) doCopyFileWithThrottler(client volume_server_pb.VolumeSe |
|
|
|
|
|
|
|
/* |
|
|
|
* |
|
|
|
only check the the differ of the file size |
|
|
|
only check the differ of the file size |
|
|
|
todo: maybe should check the received count and deleted count of the volume |
|
|
|
*/ |
|
|
|
func checkCopyFiles(originFileInf *volume_server_pb.ReadVolumeFileStatusResponse, hasRemoteDatFile bool, idxFileName, datFileName string) error { |
|
|
|
|
|
@ -150,7 +150,7 @@ func iterateEcjFile(baseFileName string, processNeedleFn func(key types.NeedleId |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
// WriteDatFile generates .dat from from .ec00 ~ .ec09 files
|
|
|
|
// WriteDatFile generates .dat from .ec00 ~ .ec09 files
|
|
|
|
func WriteDatFile(baseFileName string, datFileSize int64, shardFileNames []string) error { |
|
|
|
|
|
|
|
datFile, openErr := os.OpenFile(baseFileName+".dat", os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0644) |
|
|
|