feat: deals - show data transfer %
This commit is contained in:
@@ -755,7 +755,13 @@ func (a *API) ClientDealPieceCID(ctx context.Context, root cid.Cid) (api.DataCID
|
||||
w := &writer.Writer{}
|
||||
bw := bufio.NewWriterSize(w, int(writer.CommPBuf))
|
||||
|
||||
err := car.WriteCar(ctx, dag, []cid.Cid{root}, w)
|
||||
// Calculate the raw block size so we can figure out the transfer percentage
|
||||
// (the raw block size is the denominator)
|
||||
var rawBlockSize uint64
|
||||
err := car.WriteCarWithWalker(ctx, dag, []cid.Cid{root}, w, func(nd ipld.Node) ([]*ipld.Link, error) {
|
||||
rawBlockSize += uint64(len(nd.RawData()))
|
||||
return nd.Links(), nil
|
||||
})
|
||||
if err != nil {
|
||||
return api.DataCIDSize{}, err
|
||||
}
|
||||
@@ -765,7 +771,12 @@ func (a *API) ClientDealPieceCID(ctx context.Context, root cid.Cid) (api.DataCID
|
||||
}
|
||||
|
||||
dataCIDSize, err := w.Sum()
|
||||
return api.DataCIDSize(dataCIDSize), err
|
||||
return api.DataCIDSize{
|
||||
RawBlockSize: rawBlockSize,
|
||||
PayloadSize: dataCIDSize.PayloadSize,
|
||||
PieceSize: dataCIDSize.PieceSize,
|
||||
PieceCID: dataCIDSize.PieceCID,
|
||||
}, err
|
||||
}
|
||||
|
||||
func (a *API) ClientGenCar(ctx context.Context, ref api.FileRef, outputPath string) error {
|
||||
|
||||
Reference in New Issue
Block a user