diff options
| author | Konstantin Lebedev <lebedev_k@tochka.com> | 2021-04-28 22:28:05 +0500 |
|---|---|---|
| committer | Konstantin Lebedev <lebedev_k@tochka.com> | 2021-04-28 22:28:05 +0500 |
| commit | c2269123d3e8de2ea659a87712cc44dcdc4b636b (patch) | |
| tree | 7bec937b097db3aa7412bf048e347b0ff41ee5f5 /weed/server | |
| parent | ccbe02218a5cb22fed0fb620ea392180c9155acd (diff) | |
| download | seaweedfs-c2269123d3e8de2ea659a87712cc44dcdc4b636b.tar.xz seaweedfs-c2269123d3e8de2ea659a87712cc44dcdc4b636b.zip | |
fix aws style Etag for chunks
Diffstat (limited to 'weed/server')
| -rw-r--r-- | weed/server/filer_server_handlers_write_upload.go | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/weed/server/filer_server_handlers_write_upload.go b/weed/server/filer_server_handlers_write_upload.go index 3ab45453e..b15deb9d1 100644 --- a/weed/server/filer_server_handlers_write_upload.go +++ b/weed/server/filer_server_handlers_write_upload.go @@ -1,6 +1,7 @@ package weed_server import ( + "bytes" "crypto/md5" "hash" "io" @@ -71,6 +72,11 @@ func (fs *FilerServer) uploadReaderToChunks(w http.ResponseWriter, r *http.Reque if uploadResult.Size == 0 { break } + uploadedMd5 := util.Base64Md5ToBytes(uploadResult.ContentMd5) + readedMd5 := md5Hash.Sum(nil) + if !bytes.Equal(uploadedMd5, readedMd5) { + glog.Errorf("md5 %x does not match %x uploaded chunk %s to the volume server", readedMd5, uploadedMd5, uploadResult.Name) + } // Save to chunk manifest structure fileChunks = append(fileChunks, uploadResult.ToPbFileChunk(fileId, chunkOffset)) |
