1
0
Fork 0
mirror of https://github.com/chrislusf/seaweedfs synced 2024-06-29 05:41:02 +02:00

ensure no writes to remote storage if content is not changed

This commit is contained in:
Chris Lu 2021-08-15 20:23:41 -07:00
parent 5a7c40510f
commit 72eb6d5b9d
2 changed files with 7 additions and 4 deletions

View file

@ -176,7 +176,6 @@ func followUpdatesAndUploadToRemote(option *RemoteSyncOptions, filerSource *sour
if resp.Directory == message.NewParentPath && message.OldEntry.Name == message.NewEntry.Name {
if filer.IsSameData(message.OldEntry, message.NewEntry) {
glog.V(2).Infof("update meta: %+v", resp)
glog.V(0).Infof("delete %s", remote_storage.FormatLocation(dest))
return client.UpdateFileMetadata(dest, message.OldEntry, message.NewEntry)
}
}

View file

@ -3,7 +3,6 @@ package filer
import (
"bytes"
"fmt"
"github.com/golang/protobuf/proto"
"io"
"math"
"sort"
@ -39,9 +38,14 @@ func isSameChunks(a, b []*filer_pb.FileChunk) bool {
if len(a) != len(b) {
return false
}
sort.Slice(a, func(i, j int) bool {
return strings.Compare(a[i].ETag, a[j].ETag) < 0
})
sort.Slice(b, func(i, j int) bool {
return strings.Compare(b[i].ETag, b[j].ETag) < 0
})
for i := 0; i < len(a); i++ {
x, y := a[i], b[i]
if !proto.Equal(x, y) {
if a[i].ETag != b[i].ETag {
return false
}
}