From 7cac20ee19eceda4c222de243bd97af34ddaff8d Mon Sep 17 00:00:00 2001 From: CharlesCheung <61726649+CharlesCheung96@users.noreply.github.com> Date: Thu, 23 Feb 2023 14:07:06 +0800 Subject: [PATCH] br: fix s3 timeout (#41649) close pingcap/tidb#41650 --- br/pkg/storage/s3.go | 4 ++-- br/pkg/storage/storage.go | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/br/pkg/storage/s3.go b/br/pkg/storage/s3.go index aa052ebccc..2998098678 100644 --- a/br/pkg/storage/s3.go +++ b/br/pkg/storage/s3.go @@ -289,7 +289,7 @@ func createOssRAMCred() (*credentials.Credentials, error) { } // NewS3Storage initialize a new s3 storage for metadata. -func NewS3Storage(backend *backuppb.S3, opts *ExternalStorageOptions) (obj *S3Storage, errRet error) { +func NewS3Storage(ctx context.Context, backend *backuppb.S3, opts *ExternalStorageOptions) (obj *S3Storage, errRet error) { qs := *backend awsConfig := aws.NewConfig(). WithS3ForcePathStyle(qs.ForcePathStyle). @@ -371,7 +371,7 @@ func NewS3Storage(backend *backuppb.S3, opts *ExternalStorageOptions) (obj *S3St req.Config.S3ForcePathStyle = ses.Config.S3ForcePathStyle } } - region, err := s3manager.GetBucketRegionWithClient(context.Background(), c, qs.Bucket, setCredOpt) + region, err := s3manager.GetBucketRegionWithClient(ctx, c, qs.Bucket, setCredOpt) if err != nil { return nil, errors.Annotatef(err, "failed to get region of bucket %s", qs.Bucket) } diff --git a/br/pkg/storage/storage.go b/br/pkg/storage/storage.go index 1aa2df5f5e..279e4ff9fe 100644 --- a/br/pkg/storage/storage.go +++ b/br/pkg/storage/storage.go @@ -176,7 +176,7 @@ func New(ctx context.Context, backend *backuppb.StorageBackend, opts *ExternalSt if backend.S3 == nil { return nil, errors.Annotate(berrors.ErrStorageInvalidConfig, "s3 config not found") } - return NewS3Storage(backend.S3, opts) + return NewS3Storage(ctx, backend.S3, opts) case *backuppb.StorageBackend_Noop: return newNoopStorage(), nil case *backuppb.StorageBackend_Gcs: