aboutsummaryrefslogtreecommitdiff
path: root/weed/storage/backend/s3_backend/s3_backend.go
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2019-12-25 09:53:13 -0800
committerChris Lu <chris.lu@gmail.com>2019-12-25 09:53:13 -0800
commitd960b3474af6956ffcf59e782789001169531db8 (patch)
treec2b00aeaad0099e2c328bafdcf9f86628918a57a /weed/storage/backend/s3_backend/s3_backend.go
parent3ebeae0c0ba94659bb39e055ae0278db5bb825f1 (diff)
downloadseaweedfs-d960b3474af6956ffcf59e782789001169531db8.tar.xz
seaweedfs-d960b3474af6956ffcf59e782789001169531db8.zip
tier storage: support downloading the remote dat files
Diffstat (limited to 'weed/storage/backend/s3_backend/s3_backend.go')
-rw-r--r--weed/storage/backend/s3_backend/s3_backend.go21
1 files changed, 20 insertions, 1 deletions
diff --git a/weed/storage/backend/s3_backend/s3_backend.go b/weed/storage/backend/s3_backend/s3_backend.go
index 458111f09..30f95c319 100644
--- a/weed/storage/backend/s3_backend/s3_backend.go
+++ b/weed/storage/backend/s3_backend/s3_backend.go
@@ -9,10 +9,11 @@ import (
"github.com/aws/aws-sdk-go/service/s3"
"github.com/aws/aws-sdk-go/service/s3/s3iface"
+ "github.com/google/uuid"
+
"github.com/chrislusf/seaweedfs/weed/glog"
"github.com/chrislusf/seaweedfs/weed/pb/volume_server_pb"
"github.com/chrislusf/seaweedfs/weed/storage/backend"
- "github.com/google/uuid"
)
func init() {
@@ -85,6 +86,24 @@ func (s *S3BackendStorage) CopyFile(f *os.File, fn func(progressed int64, percen
return
}
+func (s *S3BackendStorage) DownloadFile(fileName string, key string, fn func(progressed int64, percentage float32) error) (size int64, err error) {
+
+ glog.V(1).Infof("download dat file of %s from remote s3.%s as %s", fileName, s.id, key)
+
+ size, err = downloadFromS3(s.conn, fileName, s.bucket, key, fn)
+
+ return
+}
+
+func (s *S3BackendStorage) DeleteFile(key string) (err error) {
+
+ glog.V(1).Infof("delete dat file %s from remote", key)
+
+ err = deleteFromS3(s.conn, s.bucket, key)
+
+ return
+}
+
type S3BackendStorageFile struct {
backendStorage *S3BackendStorage
key string