@@ -27,8 +27,9 @@ var PieceParkPollInterval = time.Second * 15
2727// ParkPieceTask gets a piece from some origin, and parks it in storage
2828// Pieces are always f00, piece ID is mapped to pieceCID in the DB
2929type ParkPieceTask struct {
30- db * harmonydb.DB
31- sc * ffi2.SealCalls
30+ db * harmonydb.DB
31+ sc * ffi2.SealCalls
32+ remote * paths.Remote
3233
3334 TF promise.Promise [harmonytask.AddTaskFunc ]
3435
@@ -38,17 +39,18 @@ type ParkPieceTask struct {
3839}
3940
4041func NewParkPieceTask (db * harmonydb.DB , sc * ffi2.SealCalls , max int ) (* ParkPieceTask , error ) {
41- return newPieceTask (db , sc , max , false )
42+ return newPieceTask (db , sc , nil , max , false )
4243}
4344
44- func NewStorePieceTask (db * harmonydb.DB , sc * ffi2.SealCalls , max int ) (* ParkPieceTask , error ) {
45- return newPieceTask (db , sc , max , true )
45+ func NewStorePieceTask (db * harmonydb.DB , sc * ffi2.SealCalls , remote * paths. Remote , max int ) (* ParkPieceTask , error ) {
46+ return newPieceTask (db , sc , remote , max , true )
4647}
4748
48- func newPieceTask (db * harmonydb.DB , sc * ffi2.SealCalls , max int , longTerm bool ) (* ParkPieceTask , error ) {
49+ func newPieceTask (db * harmonydb.DB , sc * ffi2.SealCalls , remote * paths. Remote , max int , longTerm bool ) (* ParkPieceTask , error ) {
4950 pt := & ParkPieceTask {
5051 db : db ,
5152 sc : sc ,
53+ remote : remote ,
5254 max : max ,
5355 longTerm : longTerm ,
5456 }
@@ -165,7 +167,7 @@ func (p *ParkPieceTask) Do(taskID harmonytask.TaskID, stillOwned func() bool) (d
165167 if err != nil {
166168 return false , xerrors .Errorf ("unmarshaling reference data headers: %w" , err )
167169 }
168- upr := dealdata .NewUrlReader (refData [i ].DataURL , hdrs , pieceData .PieceRawSize )
170+ upr := dealdata .NewUrlReader (p . remote , refData [i ].DataURL , hdrs , pieceData .PieceRawSize )
169171
170172 defer func () {
171173 _ = upr .Close ()
0 commit comments