diff options
| author | Chris Lu <chris.lu@gmail.com> | 2019-12-25 09:53:13 -0800 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2019-12-25 09:53:13 -0800 |
| commit | d960b3474af6956ffcf59e782789001169531db8 (patch) | |
| tree | c2b00aeaad0099e2c328bafdcf9f86628918a57a /weed/storage/backend/s3_backend/s3_backend.go | |
| parent | 3ebeae0c0ba94659bb39e055ae0278db5bb825f1 (diff) | |
| download | seaweedfs-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.go | 21 |
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 |
