Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update to filecoin-ffi with shared types #127

Merged
merged 2 commits into from
Feb 27, 2020
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,16 @@ module github.com/filecoin-project/go-fil-markets
go 1.13

require (
github.com/filecoin-project/go-address v0.0.0-20200107215422-da8eea2842b5
github.com/GeertJohan/go.rice v1.0.0 // indirect
github.com/filecoin-project/go-address v0.0.2-0.20200218010043-eb9bb40ed5be
github.com/filecoin-project/go-cbor-util v0.0.0-20191219014500-08c40a1e63a2
github.com/filecoin-project/go-data-transfer v0.0.0-20191219005021-4accf56bd2ce
github.com/filecoin-project/go-fil-commcid v0.0.0-20200208005934-2b8bd03caca5
github.com/filecoin-project/go-padreader v0.0.0-20200210211231-548257017ca6
github.com/filecoin-project/go-sectorbuilder v0.0.2-0.20200210220012-eb75ec747d6b
github.com/filecoin-project/go-sectorbuilder v0.0.2-0.20200226210935-4739f8749f56
github.com/filecoin-project/go-statemachine v0.0.0-20200226041606-2074af6d51d9
github.com/filecoin-project/go-statestore v0.1.0
github.com/filecoin-project/specs-actors v0.0.0-20200220011005-b2a2fbf40362
github.com/filecoin-project/specs-actors v0.0.0-20200226200336-94c9b92b2775
github.com/hannahhoward/cbor-gen-for v0.0.0-20191218204337-9ab7b1bcc099
github.com/ipfs/go-block-format v0.0.2
github.com/ipfs/go-blockservice v0.1.3-0.20190908200855-f22eea50656c
Expand Down
11 changes: 11 additions & 0 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -59,9 +59,12 @@ github.com/dustin/go-humanize v1.0.0 h1:VSnTsYCnlFHaM2/igO1h6X3HA71jcobQuxemgkq4
github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
github.com/fatih/color v1.7.0 h1:DkWD4oS2D8LGGgTQ6IvwJJXSL5Vp2ffcQg58nFV38Ys=
github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
github.com/fatih/color v1.8.0/go.mod h1:3l45GVGkyrnYNl9HoIjnp2NnNWvh6hLAqD8yTfGjnw8=
github.com/fd/go-nat v1.0.0/go.mod h1:BTBu/CKvMmOMUPkKVef1pngt2WFH/lg7E6yQnulfp6E=
github.com/filecoin-project/go-address v0.0.0-20200107215422-da8eea2842b5 h1:/MmWluswvDIbuPvBct4q6HeQgVm62O2DzWYTB38kt4A=
github.com/filecoin-project/go-address v0.0.0-20200107215422-da8eea2842b5/go.mod h1:SAOwJoakQ8EPjwNIsiakIQKsoKdkcbx8U3IapgCg9R0=
github.com/filecoin-project/go-address v0.0.2-0.20200218010043-eb9bb40ed5be h1:TooKBwR/g8jG0hZ3lqe9S5sy2vTUcLOZLlz3M5wGn2E=
github.com/filecoin-project/go-address v0.0.2-0.20200218010043-eb9bb40ed5be/go.mod h1:SAOwJoakQ8EPjwNIsiakIQKsoKdkcbx8U3IapgCg9R0=
github.com/filecoin-project/go-amt-ipld/v2 v2.0.1-0.20200131012142-05d80eeccc5e h1:IOoff6yAZSJ5zHCPY2jzGNwQYQU6ygsRVe/cSnJrY+o=
github.com/filecoin-project/go-amt-ipld/v2 v2.0.1-0.20200131012142-05d80eeccc5e/go.mod h1:boRtQhzmxNocrMxOXo1NYn4oUc1NGvR8tEa79wApNXg=
github.com/filecoin-project/go-cbor-util v0.0.0-20191219014500-08c40a1e63a2 h1:av5fw6wmm58FYMgJeoB/lK9XXrgdugYiTqkdxjTy9k8=
Expand All @@ -76,8 +79,11 @@ github.com/filecoin-project/go-padreader v0.0.0-20200210211231-548257017ca6 h1:9
github.com/filecoin-project/go-padreader v0.0.0-20200210211231-548257017ca6/go.mod h1:0HgYnrkeSU4lu1p+LEOeDpFsNBssa0OGGriWdA4hvaE=
github.com/filecoin-project/go-paramfetch v0.0.0-20200102181131-b20d579f2878 h1:YicJT9xhPzZ1SBGiJFNUCkfwqK/G9vFyY1ytKBSjNJA=
github.com/filecoin-project/go-paramfetch v0.0.0-20200102181131-b20d579f2878/go.mod h1:40kI2Gv16mwcRsHptI3OAV4nlOEU7wVDc4RgMylNFjU=
github.com/filecoin-project/go-paramfetch v0.0.2-0.20200218225740-47c639bab663/go.mod h1:fZzmf4tftbwf9S37XRifoJlz7nCjRdIrMGLR07dKLCc=
github.com/filecoin-project/go-sectorbuilder v0.0.2-0.20200210220012-eb75ec747d6b h1:ds4TQay8wuV+2ucC6ENAeSYQDdl9CWYXnX0gvxzGKHg=
github.com/filecoin-project/go-sectorbuilder v0.0.2-0.20200210220012-eb75ec747d6b/go.mod h1:qsuPYsbKTHH2phNk81aUF9VJIilUxFrnxxnryJh4FOM=
github.com/filecoin-project/go-sectorbuilder v0.0.2-0.20200226210935-4739f8749f56 h1:CqldkHf9HtAsewneyOZdi19Btc6kEvktVVeZsP9N7NQ=
github.com/filecoin-project/go-sectorbuilder v0.0.2-0.20200226210935-4739f8749f56/go.mod h1:tzTc9BxxSbjlIzhFwm5h9oBkXKkRuLxeiWspntwnKyw=
github.com/filecoin-project/go-statemachine v0.0.0-20200226041606-2074af6d51d9 h1:k9qVR9ItcziSB2rxtlkN/MDWNlbsI6yzec+zjUatLW0=
github.com/filecoin-project/go-statemachine v0.0.0-20200226041606-2074af6d51d9/go.mod h1:FGwQgZAt2Gh5mjlwJUlVB62JeYdo+if0xWxSEfBD9ig=
github.com/filecoin-project/go-statestore v0.1.0 h1:t56reH59843TwXHkMcwyuayStBIiWBRilQjQ+5IiwdQ=
Expand All @@ -86,6 +92,8 @@ github.com/filecoin-project/specs-actors v0.0.0-20200210130641-2d1fbd8672cf h1:f
github.com/filecoin-project/specs-actors v0.0.0-20200210130641-2d1fbd8672cf/go.mod h1:xtDZUB6pe4Pksa/bAJbJ693OilaC5Wbot9jMhLm3cZA=
github.com/filecoin-project/specs-actors v0.0.0-20200220011005-b2a2fbf40362 h1:6FKMQbj6UIsg7t2qm1YlSbHjh/ehnCjaiOWzFwJefO0=
github.com/filecoin-project/specs-actors v0.0.0-20200220011005-b2a2fbf40362/go.mod h1:xtDZUB6pe4Pksa/bAJbJ693OilaC5Wbot9jMhLm3cZA=
github.com/filecoin-project/specs-actors v0.0.0-20200226200336-94c9b92b2775 h1:j6EdTc5hIHe31ydt9SjgJNDi/ck50y5wa1OJ+4YZ6zk=
github.com/filecoin-project/specs-actors v0.0.0-20200226200336-94c9b92b2775/go.mod h1:0HAWYrvajFHDgRaKbF0rl+IybVLZL5z4gQ8koCMPhoU=
github.com/fsnotify/fsnotify v1.4.7 h1:IXs+QLmnXW2CcXuY+8Mzv/fWEsPGWxqefPtCP5CnV9I=
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
github.com/go-check/check v0.0.0-20180628173108-788fd7840127 h1:0gkP6mzaMqkmpcJYCFOLkIBwI7xFExG03bbkOkCvUPI=
Expand Down Expand Up @@ -413,6 +421,8 @@ github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaO
github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ=
github.com/mattn/go-colorable v0.1.2 h1:/bC9yWikZXAL9uJdulbSfyVNIR3n3trXl+v8+1sx8mU=
github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=
github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=
github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4=
github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4=
github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
Expand Down Expand Up @@ -654,6 +664,7 @@ golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJ
golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190423024810-112230192c58 h1:8gQV6CLnAEikrhgkHFbMAEhagSSnXWGV915qUMm9mrU=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sys v0.0.0-20180202135801-37707fdb30a5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
Expand Down
34 changes: 17 additions & 17 deletions pieceio/pieceio.go
Original file line number Diff line number Diff line change
Expand Up @@ -51,15 +51,15 @@ func NewPieceIOWithStore(carIO CarIO, store filestore.FileStore, bs blockstore.B
return &pieceIOWithStore{pieceIO{carIO, bs}, store}
}

func (pio *pieceIO) GeneratePieceCommitment(payloadCid cid.Cid, selector ipld.Node) ([]byte, abi.UnpaddedPieceSize, error) {
func (pio *pieceIO) GeneratePieceCommitment(rt abi.RegisteredProof, payloadCid cid.Cid, selector ipld.Node) (cid.Cid, abi.UnpaddedPieceSize, error) {
preparedCar, err := pio.carIO.PrepareCar(context.Background(), pio.bs, payloadCid, selector)
if err != nil {
return nil, 0, err
return cid.Undef, 0, err
}
pieceSize := uint64(preparedCar.Size())
r, w, err := os.Pipe()
if err != nil {
return nil, 0, err
return cid.Undef, 0, err
}
var stop sync.WaitGroup
stop.Add(1)
Expand All @@ -72,25 +72,25 @@ func (pio *pieceIO) GeneratePieceCommitment(payloadCid cid.Cid, selector ipld.No
werr = err
}
}()
commitment, paddedSize, err := GeneratePieceCommitment(r, pieceSize)
commitment, paddedSize, err := GeneratePieceCommitment(rt, r, pieceSize)
closeErr := r.Close()
if err != nil {
return nil, 0, err
return cid.Undef, 0, err
}
if closeErr != nil {
return nil, 0, closeErr
return cid.Undef, 0, closeErr
}
stop.Wait()
if werr != nil {
return nil, 0, werr
return cid.Undef, 0, werr
}
return commitment, paddedSize, nil
}

func (pio *pieceIOWithStore) GeneratePieceCommitmentToFile(payloadCid cid.Cid, selector ipld.Node) ([]byte, filestore.Path, abi.UnpaddedPieceSize, error) {
func (pio *pieceIOWithStore) GeneratePieceCommitmentToFile(rt abi.RegisteredProof, payloadCid cid.Cid, selector ipld.Node) (cid.Cid, filestore.Path, abi.UnpaddedPieceSize, error) {
f, err := pio.store.CreateTemp()
if err != nil {
return nil, "", 0, err
return cid.Undef, "", 0, err
}
cleanup := func() {
f.Close()
Expand All @@ -99,30 +99,30 @@ func (pio *pieceIOWithStore) GeneratePieceCommitmentToFile(payloadCid cid.Cid, s
err = pio.carIO.WriteCar(context.Background(), pio.bs, payloadCid, selector, f)
if err != nil {
cleanup()
return nil, "", 0, err
return cid.Undef, "", 0, err
}
pieceSize := uint64(f.Size())
_, err = f.Seek(0, io.SeekStart)
if err != nil {
cleanup()
return nil, "", 0, err
return cid.Undef, "", 0, err
}
commitment, paddedSize, err := GeneratePieceCommitment(f, pieceSize)
commitment, paddedSize, err := GeneratePieceCommitment(rt, f, pieceSize)
if err != nil {
cleanup()
return nil, "", 0, err
return cid.Undef, "", 0, err
}
_ = f.Close()
return commitment, f.Path(), paddedSize, nil
}

func GeneratePieceCommitment(rd io.Reader, pieceSize uint64) ([]byte, abi.UnpaddedPieceSize, error) {
func GeneratePieceCommitment(rt abi.RegisteredProof, rd io.Reader, pieceSize uint64) (cid.Cid, abi.UnpaddedPieceSize, error) {
paddedReader, paddedSize := padreader.New(rd, pieceSize)
commitment, err := sectorbuilder.GeneratePieceCommitment(paddedReader, paddedSize)
commitment, err := sectorbuilder.GeneratePieceCIDFromFile(rt, paddedReader, paddedSize)
if err != nil {
return nil, 0, err
return cid.Undef, 0, err
}
return commitment[:], paddedSize, nil
return commitment, paddedSize, nil
}

func (pio *pieceIO) ReadPiece(r io.Reader) (cid.Cid, error) {
Expand Down
39 changes: 20 additions & 19 deletions pieceio/pieceio_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,21 +5,26 @@ import (
"context"
"fmt"

"io"
"testing"

"github.com/filecoin-project/go-fil-markets/filestore"
fsmocks "github.com/filecoin-project/go-fil-markets/filestore/mocks"
"github.com/filecoin-project/go-fil-markets/pieceio"
"github.com/filecoin-project/go-fil-markets/pieceio/cario"
pmocks "github.com/filecoin-project/go-fil-markets/pieceio/mocks"

"github.com/filecoin-project/go-sectorbuilder"
"github.com/filecoin-project/specs-actors/actors/abi"

"github.com/ipfs/go-cid"
dag "github.com/ipfs/go-merkledag"
dstest "github.com/ipfs/go-merkledag/test"
ipldfree "github.com/ipld/go-ipld-prime/impl/free"
"github.com/ipld/go-ipld-prime/traversal/selector"
"github.com/ipld/go-ipld-prime/traversal/selector/builder"
"github.com/stretchr/testify/mock"
"github.com/stretchr/testify/require"
"io"
"testing"
)

func Test_ThereAndBackAgain(t *testing.T) {
Expand Down Expand Up @@ -65,7 +70,7 @@ func Test_ThereAndBackAgain(t *testing.T) {
ssb.ExploreIndex(1, ssb.ExploreRecursive(selector.RecursionLimitNone(), ssb.ExploreAll(ssb.ExploreRecursiveEdge()))))
}).Node()

bytes, tmpPath, _, err := pio.GeneratePieceCommitmentToFile(nd3.Cid(), node)
pcid, tmpPath, _, err := pio.GeneratePieceCommitmentToFile(abi.RegisteredProof_StackedDRG2KiBPoSt, nd3.Cid(), node)
require.NoError(t, err)
tmpFile, err := store.Open(tmpPath)
require.NoError(t, err)
Expand All @@ -75,9 +80,7 @@ func Test_ThereAndBackAgain(t *testing.T) {
deferErr = store.Delete(tmpFile.Path())
require.NoError(t, deferErr)
}()
for _, b := range bytes {
require.NotEqual(t, 0, b)
}
require.NotEqual(t, pcid, cid.Undef)
bufSize := int64(16) // small buffer to illustrate the logic
buf := make([]byte, bufSize)
var readErr error
Expand Down Expand Up @@ -155,7 +158,7 @@ func Test_StoreRestoreMemoryBuffer(t *testing.T) {
ssb.ExploreIndex(1, ssb.ExploreRecursive(selector.RecursionLimitNone(), ssb.ExploreAll(ssb.ExploreRecursiveEdge()))))
}).Node()

commitment, tmpPath, paddedSize, err := pio.GeneratePieceCommitmentToFile(nd3.Cid(), node)
commitment, tmpPath, paddedSize, err := pio.GeneratePieceCommitmentToFile(abi.RegisteredProof_StackedDRG2KiBPoSt, nd3.Cid(), node)
require.NoError(t, err)
tmpFile, err := store.Open(tmpPath)
require.NoError(t, err)
Expand All @@ -169,16 +172,14 @@ func Test_StoreRestoreMemoryBuffer(t *testing.T) {
_, err = tmpFile.Seek(0, io.SeekStart)
require.NoError(t, err)

for _, b := range commitment {
require.NotEqual(t, 0, b)
}
require.NotEqual(t, commitment, cid.Undef)
buf := make([]byte, paddedSize)
_, err = tmpFile.Read(buf)
require.NoError(t, err)
buffer := bytes.NewBuffer(buf)
secondCommitment, err := sectorbuilder.GeneratePieceCommitment(buffer, paddedSize)
secondCommitment, err := sectorbuilder.GeneratePieceCIDFromFile(abi.RegisteredProof_StackedDRG2KiBPoSt, buffer, paddedSize)
require.NoError(t, err)
require.Equal(t, commitment, secondCommitment[:])
require.Equal(t, commitment, secondCommitment)
}

func Test_PieceCommitmentEquivalenceMemoryFile(t *testing.T) {
Expand Down Expand Up @@ -222,13 +223,13 @@ func Test_PieceCommitmentEquivalenceMemoryFile(t *testing.T) {
ssb.ExploreIndex(1, ssb.ExploreRecursive(selector.RecursionLimitNone(), ssb.ExploreAll(ssb.ExploreRecursiveEdge()))))
}).Node()

fcommitment, tmpPath, fpaddedSize, ferr := pio.GeneratePieceCommitmentToFile(nd3.Cid(), node)
fcommitment, tmpPath, fpaddedSize, ferr := pio.GeneratePieceCommitmentToFile(abi.RegisteredProof_StackedDRG2KiBPoSt, nd3.Cid(), node)
defer func() {
deferErr := store.Delete(tmpPath)
require.NoError(t, deferErr)
}()

mcommitment, mpaddedSize, merr := pio.GeneratePieceCommitment(nd3.Cid(), node)
mcommitment, mpaddedSize, merr := pio.GeneratePieceCommitment(abi.RegisteredProof_StackedDRG2KiBPoSt, nd3.Cid(), node)
require.Equal(t, fcommitment, mcommitment)
require.Equal(t, fpaddedSize, mpaddedSize)
require.Equal(t, ferr, merr)
Expand Down Expand Up @@ -273,7 +274,7 @@ func Test_Failures(t *testing.T) {
fsmock := fsmocks.FileStore{}
fsmock.On("CreateTemp").Return(nil, fmt.Errorf("Failed"))
pio := pieceio.NewPieceIOWithStore(nil, &fsmock, sourceBs)
_, _, _, err := pio.GeneratePieceCommitmentToFile(nd3.Cid(), node)
_, _, _, err := pio.GeneratePieceCommitmentToFile(abi.RegisteredProof_StackedDRG2KiBPoSt, nd3.Cid(), node)
require.Error(t, err)
})
t.Run("write CAR fails", func(t *testing.T) {
Expand All @@ -285,7 +286,7 @@ func Test_Failures(t *testing.T) {
any := mock.Anything
ciomock.On("WriteCar", any, any, any, any, any).Return(fmt.Errorf("failed to write car"))
pio := pieceio.NewPieceIOWithStore(&ciomock, store, sourceBs)
_, _, _, err = pio.GeneratePieceCommitmentToFile(nd3.Cid(), node)
_, _, _, err = pio.GeneratePieceCommitmentToFile(abi.RegisteredProof_StackedDRG2KiBPoSt, nd3.Cid(), node)
require.Error(t, err)
})
t.Run("prepare CAR fails", func(t *testing.T) {
Expand All @@ -294,7 +295,7 @@ func Test_Failures(t *testing.T) {
any := mock.Anything
ciomock.On("PrepareCar", any, any, any, any).Return(nil, fmt.Errorf("failed to prepare car"))
pio := pieceio.NewPieceIO(&ciomock, sourceBs)
_, _, err := pio.GeneratePieceCommitment(nd3.Cid(), node)
_, _, err := pio.GeneratePieceCommitment(abi.RegisteredProof_StackedDRG2KiBPoSt, nd3.Cid(), node)
require.Error(t, err)
})
t.Run("PreparedCard dump operation fails", func(t *testing.T) {
Expand All @@ -305,7 +306,7 @@ func Test_Failures(t *testing.T) {
preparedCarMock.On("Size").Return(uint64(1000))
preparedCarMock.On("Dump", any).Return(fmt.Errorf("failed to write car"))
pio := pieceio.NewPieceIO(&ciomock, sourceBs)
_, _, err := pio.GeneratePieceCommitment(nd3.Cid(), node)
_, _, err := pio.GeneratePieceCommitment(abi.RegisteredProof_StackedDRG2KiBPoSt, nd3.Cid(), node)
require.Error(t, err)
})
t.Run("seek fails", func(t *testing.T) {
Expand All @@ -332,7 +333,7 @@ func Test_Failures(t *testing.T) {
mockfile.On("Seek", mock.Anything, mock.Anything).Return(int64(0), fmt.Errorf("seek failed"))

pio := pieceio.NewPieceIOWithStore(cio, &fsmock, sourceBs)
_, _, _, err := pio.GeneratePieceCommitmentToFile(nd3.Cid(), node)
_, _, _, err := pio.GeneratePieceCommitmentToFile(abi.RegisteredProof_StackedDRG2KiBPoSt, nd3.Cid(), node)
require.Error(t, err)
})
}
4 changes: 2 additions & 2 deletions pieceio/types.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@ type ReadStore interface {

// PieceIO converts between payloads and pieces
type PieceIO interface {
GeneratePieceCommitment(payloadCid cid.Cid, selector ipld.Node) ([]byte, abi.UnpaddedPieceSize, error)
GeneratePieceCommitment(rt abi.RegisteredProof, payloadCid cid.Cid, selector ipld.Node) (cid.Cid, abi.UnpaddedPieceSize, error)
ReadPiece(r io.Reader) (cid.Cid, error)
}

type PieceIOWithStore interface {
PieceIO
GeneratePieceCommitmentToFile(payloadCid cid.Cid, selector ipld.Node) ([]byte, filestore.Path, abi.UnpaddedPieceSize, error)
GeneratePieceCommitmentToFile(rt abi.RegisteredProof, payloadCid cid.Cid, selector ipld.Node) (cid.Cid, filestore.Path, abi.UnpaddedPieceSize, error)
}
3 changes: 2 additions & 1 deletion shared_testutil/test_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,8 @@ import (
// MakeTestSignedVoucher generates a random SignedVoucher that has all non-zero fields
func MakeTestSignedVoucher() *paych.SignedVoucher {
return &paych.SignedVoucher{
TimeLock: abi.ChainEpoch(rand.Int63()),
TimeLockMin: abi.ChainEpoch(rand.Int63()),
TimeLockMax: 0,
SecretPreimage: []byte("secret-preimage"),
Extra: MakeTestModVerifyParams(),
Lane: rand.Uint64(),
Expand Down
3 changes: 1 addition & 2 deletions storagemarket/impl/client.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ import (

"github.com/filecoin-project/go-address"
datatransfer "github.com/filecoin-project/go-data-transfer"
commcid "github.com/filecoin-project/go-fil-commcid"
"github.com/filecoin-project/go-fil-markets/filestore"
"github.com/filecoin-project/go-fil-markets/pieceio"
"github.com/filecoin-project/go-fil-markets/pieceio/cario"
Expand Down Expand Up @@ -198,7 +197,7 @@ func (c *Client) Start(ctx context.Context, p ClientDealProposal) (cid.Cid, erro
}

dealProposal := market.DealProposal{
PieceCID: commcid.PieceCommitmentV1ToCID(commP),
PieceCID: commP,
PieceSize: pieceSize.Padded(),
Client: p.Client,
Provider: p.ProviderAddress,
Expand Down
8 changes: 4 additions & 4 deletions storagemarket/impl/client_utils.go
Original file line number Diff line number Diff line change
Expand Up @@ -38,19 +38,19 @@ func (c *Client) failDeal(id cid.Cid, cerr error) {
log.Errorf("deal %s failed: %+v", id, cerr)
}

func (c *Client) commP(ctx context.Context, root cid.Cid) ([]byte, abi.UnpaddedPieceSize, error) {
func (c *Client) commP(ctx context.Context, root cid.Cid) (cid.Cid, abi.UnpaddedPieceSize, error) {
ssb := builder.NewSelectorSpecBuilder(ipldfree.NodeBuilder())

// entire DAG selector
allSelector := ssb.ExploreRecursive(selector.RecursionLimitNone(),
ssb.ExploreAll(ssb.ExploreRecursiveEdge())).Node()

commp, paddedSize, err := c.pio.GeneratePieceCommitment(root, allSelector)
commp, paddedSize, err := c.pio.GeneratePieceCommitment(abi.RegisteredProof_StackedDRG2KiBPoSt, root, allSelector)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@why this is where I see the hard coding in the storage client

if err != nil {
return nil, 0, xerrors.Errorf("generating CommP: %w", err)
return cid.Undef, 0, xerrors.Errorf("generating CommP: %w", err)
}

return commp[:], paddedSize, nil
return commp, paddedSize, nil
}

func (c *Client) verifyResponse(resp network.SignedResponse, minerAddr address.Address) error {
Expand Down
Loading