Skip to content

Commit

Permalink
br: not use the custom http client for gcs (#47026)
Browse files Browse the repository at this point in the history
close #47022
  • Loading branch information
Leavrth authored Sep 18, 2023
1 parent 35add6f commit 59e31f0
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 1 deletion.
3 changes: 3 additions & 0 deletions br/pkg/storage/gcs.go
Original file line number Diff line number Diff line change
Expand Up @@ -296,6 +296,9 @@ func NewGCSStorage(ctx context.Context, gcs *backuppb.GCS, opts *ExternalStorage
if gcs.Endpoint != "" {
clientOps = append(clientOps, option.WithEndpoint(gcs.Endpoint))
}
// the HTTPClient should has credential, currently the HTTPClient only has the http.Transport.
// So we remove the HTTPClient in the storage.New().
// Issue: https: //github.com/pingcap/tidb/issues/47022
if opts.HTTPClient != nil {
clientOps = append(clientOps, option.WithHTTPClient(opts.HTTPClient))
}
Expand Down
7 changes: 6 additions & 1 deletion br/pkg/storage/storage.go
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,9 @@ type ExternalStorageOptions struct {
NoCredentials bool

// HTTPClient to use. The created storage may ignore this field if it is not
// directly using HTTP (e.g. the local storage).
// directly using HTTP (e.g. the local storage) or use self-design HTTP client
// with credential (e.g. the gcs).
// NOTICE: the HTTPClient is only used by s3 storage and azure blob storage.
HTTPClient *http.Client

// CheckPermissions check the given permission in New() function.
Expand Down Expand Up @@ -197,6 +199,9 @@ func New(ctx context.Context, backend *backuppb.StorageBackend, opts *ExternalSt
if backend.Gcs == nil {
return nil, errors.Annotate(berrors.ErrStorageInvalidConfig, "GCS config not found")
}
// the HTTPClient should has credential, currently the HTTPClient only has the http.Transport.
// Issue: https: //github.com/pingcap/tidb/issues/47022
opts.HTTPClient = nil
return NewGCSStorage(ctx, backend.Gcs, opts)
case *backuppb.StorageBackend_AzureBlobStorage:
return newAzureBlobStorage(ctx, backend.AzureBlobStorage, opts)
Expand Down

0 comments on commit 59e31f0

Please sign in to comment.