@@ -40,8 +40,6 @@ import (
40
40
"github.com/percona/percona-backup-mongodb/pbm/log"
41
41
"github.com/percona/percona-backup-mongodb/pbm/restore/phys"
42
42
"github.com/percona/percona-backup-mongodb/pbm/storage"
43
- "github.com/percona/percona-backup-mongodb/pbm/storage/gcs"
44
- "github.com/percona/percona-backup-mongodb/pbm/storage/s3"
45
43
"github.com/percona/percona-backup-mongodb/pbm/topo"
46
44
"github.com/percona/percona-backup-mongodb/pbm/util"
47
45
"github.com/percona/percona-backup-mongodb/pbm/version"
@@ -1449,26 +1447,11 @@ func (r *PhysRestore) dumpMeta(meta *RestoreMeta, s defs.Status, msg string) err
1449
1447
1450
1448
func (r * PhysRestore ) copyFiles () (* storage.DownloadStat , error ) {
1451
1449
var stat * storage.DownloadStat
1452
- readFn := r .bcpStg .SourceReader
1453
-
1454
- switch t := r .bcpStg .(type ) {
1455
- case * s3.S3 :
1456
- d := t .NewDownload (r .confOpts .NumDownloadWorkers , r .confOpts .MaxDownloadBufferMb , r .confOpts .DownloadChunkMb )
1457
- readFn = d .SourceReader
1458
- defer func () {
1459
- s := d .Stat ()
1460
- stat = & s
1461
- r .log .Debug ("download stat: %s" , s )
1462
- }()
1463
- case * gcs.GCS :
1464
- d := t .NewDownload (r .confOpts .NumDownloadWorkers , r .confOpts .MaxDownloadBufferMb , r .confOpts .DownloadChunkMb )
1465
- readFn = d .SourceReader
1466
- defer func () {
1467
- s := d .Stat ()
1468
- stat = & s
1469
- r .log .Debug ("download stat: %s" , s )
1470
- }()
1471
- }
1450
+ defer func () {
1451
+ s := r .stg .DownloadStat ()
1452
+ stat = & s
1453
+ r .log .Debug ("download stat: %s" , s )
1454
+ }()
1472
1455
1473
1456
setName := util .MakeReverseRSMapFunc (r .rsMap )(r .nodeInfo .SetName )
1474
1457
cpbuf := make ([]byte , 32 * 1024 )
@@ -1494,7 +1477,7 @@ func (r *PhysRestore) copyFiles() (*storage.DownloadStat, error) {
1494
1477
}
1495
1478
1496
1479
r .log .Info ("copy <%s> to <%s>" , src , dst )
1497
- sr , err := readFn (src )
1480
+ sr , err := r . stg . SourceReader (src )
1498
1481
if err != nil {
1499
1482
return stat , errors .Wrapf (err , "create source reader for <%s>" , src )
1500
1483
}
@@ -2597,7 +2580,8 @@ func (r *PhysRestore) prepareBackup(ctx context.Context, backupName string) erro
2597
2580
return errors .Wrap (err , "get backup metadata" )
2598
2581
}
2599
2582
2600
- r .bcpStg , err = util .StorageFromConfig (& r .bcp .Store .StorageConf , r .nodeInfo .Me , log .LogEventFromContext (ctx ))
2583
+ r .bcpStg , err = util .StorageWithDownloaderFromConfig (
2584
+ & r .bcp .Store .StorageConf , r .confOpts , r .nodeInfo .Me , log .LogEventFromContext (ctx ))
2601
2585
if err != nil {
2602
2586
return errors .Wrap (err , "get backup storage" )
2603
2587
}
0 commit comments