aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchrislu <chris.lu@gmail.com>2022-09-11 21:53:15 -0700
committerchrislu <chris.lu@gmail.com>2022-09-11 21:53:15 -0700
commitb834027c5ae072f86f6fc7edcf55c3be1929befb (patch)
treed5e5ebfd44db511148281fd6b081e5c8e727bc34
parentd8ca7d34fe3f83dc1ad174808a2356165e066a15 (diff)
downloadseaweedfs-b834027c5ae072f86f6fc7edcf55c3be1929befb.tar.xz
seaweedfs-b834027c5ae072f86f6fc7edcf55c3be1929befb.zip
refactor
-rw-r--r--weed/command/filer_remote_gateway_buckets.go3
-rw-r--r--weed/command/filer_remote_sync_dir.go12
2 files changed, 10 insertions, 5 deletions
diff --git a/weed/command/filer_remote_gateway_buckets.go b/weed/command/filer_remote_gateway_buckets.go
index 974b3620e..c5fce44f8 100644
--- a/weed/command/filer_remote_gateway_buckets.go
+++ b/weed/command/filer_remote_gateway_buckets.go
@@ -9,7 +9,6 @@ import (
"github.com/seaweedfs/seaweedfs/weed/pb/remote_pb"
"github.com/seaweedfs/seaweedfs/weed/remote_storage"
"github.com/seaweedfs/seaweedfs/weed/replication/source"
- "github.com/seaweedfs/seaweedfs/weed/s3api/s3_constants"
"github.com/seaweedfs/seaweedfs/weed/util"
"google.golang.org/protobuf/proto"
"math"
@@ -183,7 +182,7 @@ func (option *RemoteGatewayOptions) makeBucketedEventProcessor(filerSource *sour
if message.NewParentPath == option.bucketsDir {
return handleCreateBucket(message.NewEntry)
}
- if strings.HasPrefix(message.NewParentPath, option.bucketsDir) && strings.Contains(message.NewParentPath, "/"+s3_constants.MultipartUploadsFolder+"/") {
+ if isMultipartUploadFile(message.NewParentPath, message.NewEntry.Name) {
return nil
}
if !filer.HasData(message.NewEntry) {
diff --git a/weed/command/filer_remote_sync_dir.go b/weed/command/filer_remote_sync_dir.go
index a36145fca..5a9170582 100644
--- a/weed/command/filer_remote_sync_dir.go
+++ b/weed/command/filer_remote_sync_dir.go
@@ -113,7 +113,7 @@ func makeEventProcessor(remoteStorage *remote_pb.RemoteConf, mountedDir string,
return nil
}
if filer_pb.IsCreate(resp) {
- if strings.Contains(message.NewParentPath, "/"+s3_constants.MultipartUploadsFolder+"/") {
+ if isMultipartUploadFile(message.NewParentPath, message.NewEntry.Name) {
return nil
}
if !filer.HasData(message.NewEntry) {
@@ -165,8 +165,8 @@ func makeEventProcessor(remoteStorage *remote_pb.RemoteConf, mountedDir string,
glog.V(2).Infof("update: %+v", resp)
glog.V(0).Infof("delete %s", remote_storage.FormatLocation(oldDest))
if err := client.DeleteFile(oldDest); err != nil {
- if !strings.Contains(resp.Directory, "/"+s3_constants.MultipartUploadsFolder+"/") {
- return err
+ if isMultipartUploadFile(resp.Directory, message.OldEntry.Name) {
+ return nil
}
}
remoteEntry, writeErr := retriedWriteFile(client, filerSource, message.NewEntry, dest)
@@ -258,3 +258,9 @@ func updateLocalEntry(filerClient filer_pb.FilerClient, dir string, entry *filer
return err
})
}
+
+func isMultipartUploadFile(dir string, name string) bool {
+ return strings.HasPrefix(dir, "/buckets/") &&
+ strings.Contains(dir, "/"+s3_constants.MultipartUploadsFolder+"/") &&
+ strings.HasSuffix(name, ".part")
+}