From 897b26913957ac2560394f3a804e16cccb69e9f6 Mon Sep 17 00:00:00 2001 From: Aayush Rajasekaran Date: Thu, 30 Apr 2020 20:54:41 -0400 Subject: [PATCH 1/2] Test to demonstrate HAMT issue --- chain/gen/gen.go | 10 +++++++--- chain/gen/gen_test.go | 15 ++++++++------- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/chain/gen/gen.go b/chain/gen/gen.go index 50c8632ce..97c70bb4b 100644 --- a/chain/gen/gen.go +++ b/chain/gen/gen.go @@ -87,7 +87,7 @@ func (m mybs) Get(c cid.Cid) (block.Block, error) { return b, nil } -func NewGenerator() (*ChainGen, error) { +func NewGeneratorWithSectors(numSectors int) (*ChainGen, error) { mr := repo.NewMemory(nil) lr, err := mr.Lock(repo.StorageMiner) if err != nil { @@ -136,7 +136,7 @@ func NewGenerator() (*ChainGen, error) { return nil, err } - genm1, k1, err := seed.PreSeal(maddr1, abi.RegisteredProof_StackedDRG2KiBPoSt, 0, 1, m1temp, []byte("some randomness"), nil) + genm1, k1, err := seed.PreSeal(maddr1, abi.RegisteredProof_StackedDRG2KiBPoSt, 0, numSectors, m1temp, []byte("some randomness"), nil) if err != nil { return nil, err } @@ -148,7 +148,7 @@ func NewGenerator() (*ChainGen, error) { return nil, err } - genm2, k2, err := seed.PreSeal(maddr2, abi.RegisteredProof_StackedDRG2KiBPoSt, 0, 1, m2temp, []byte("some randomness"), nil) + genm2, k2, err := seed.PreSeal(maddr2, abi.RegisteredProof_StackedDRG2KiBPoSt, 0, numSectors, m2temp, []byte("some randomness"), nil) if err != nil { return nil, err } @@ -239,6 +239,10 @@ func NewGenerator() (*ChainGen, error) { return gen, nil } +func NewGenerator() (*ChainGen, error) { + return NewGeneratorWithSectors(1) +} + func (cg *ChainGen) SetStateManager(sm *stmgr.StateManager) { cg.sm = sm } diff --git a/chain/gen/gen_test.go b/chain/gen/gen_test.go index b61a59e10..22381fa88 100644 --- a/chain/gen/gen_test.go +++ b/chain/gen/gen_test.go @@ -19,8 +19,8 @@ func init() { power.ConsensusMinerMinPower = big.NewInt(2048) } -func testGeneration(t testing.TB, n int, msgs int) { - g, err := NewGenerator() +func testGeneration(t testing.TB, n int, msgs int, sectors int) { + g, err := NewGeneratorWithSectors(sectors) if err != nil { t.Fatalf("%+v", err) } @@ -37,23 +37,24 @@ func testGeneration(t testing.TB, n int, msgs int) { } func TestChainGeneration(t *testing.T) { - testGeneration(t, 10, 20) + testGeneration(t, 10, 20, 1) + testGeneration(t, 10, 20, 25) } func BenchmarkChainGeneration(b *testing.B) { b.Run("0-messages", func(b *testing.B) { - testGeneration(b, b.N, 0) + testGeneration(b, b.N, 0, 1) }) b.Run("10-messages", func(b *testing.B) { - testGeneration(b, b.N, 10) + testGeneration(b, b.N, 10, 1) }) b.Run("100-messages", func(b *testing.B) { - testGeneration(b, b.N, 100) + testGeneration(b, b.N, 100, 1) }) b.Run("1000-messages", func(b *testing.B) { - testGeneration(b, b.N, 1000) + testGeneration(b, b.N, 1000, 1) }) } From d096c75c6e581ba1111c91abe24cf96681c3169a Mon Sep 17 00:00:00 2001 From: Aayush Rajasekaran Date: Thu, 30 Apr 2020 22:08:47 -0400 Subject: [PATCH 2/2] Update HAMT and cbor gen --- go.mod | 4 ++-- go.sum | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/go.mod b/go.mod index 81b621057..e855882a4 100644 --- a/go.mod +++ b/go.mod @@ -47,7 +47,7 @@ require ( github.com/ipfs/go-filestore v0.0.2 github.com/ipfs/go-fs-lock v0.0.1 github.com/ipfs/go-graphsync v0.0.6-0.20200408061628-e1a98fc64c42 - github.com/ipfs/go-hamt-ipld v0.0.15-0.20200427192427-f3547695a9a2 + github.com/ipfs/go-hamt-ipld v0.1.1-0.20200501020327-d53d20a7063e github.com/ipfs/go-ipfs-blockstore v0.1.4 github.com/ipfs/go-ipfs-chunker v0.0.1 github.com/ipfs/go-ipfs-ds-help v0.1.1 @@ -98,7 +98,7 @@ require ( github.com/opentracing/opentracing-go v1.1.0 github.com/stretchr/testify v1.5.1 github.com/whyrusleeping/bencher v0.0.0-20190829221104-bb6607aa8bba - github.com/whyrusleeping/cbor-gen v0.0.0-20200414195334-429a0b5e922e + github.com/whyrusleeping/cbor-gen v0.0.0-20200501014322-5f9941ef88e0 github.com/whyrusleeping/multiaddr-filter v0.0.0-20160516205228-e903e4adabd7 github.com/whyrusleeping/pubsub v0.0.0-20131020042734-02de8aa2db3d go.opencensus.io v0.22.3 diff --git a/go.sum b/go.sum index a79788fe9..aeb734355 100644 --- a/go.sum +++ b/go.sum @@ -355,8 +355,8 @@ github.com/ipfs/go-graphsync v0.0.6-0.20200408061628-e1a98fc64c42/go.mod h1:pX9G github.com/ipfs/go-hamt-ipld v0.0.14-0.20191218031521-b2c774a54db1/go.mod h1:8yRx0xLUps1Xq8ZDnIwIVdQRp7JjA55gGvCiRHT91Vk= github.com/ipfs/go-hamt-ipld v0.0.15-0.20200131012125-dd88a59d3f2e/go.mod h1:9aQJu/i/TaRDW6jqB5U217dLIDopn50wxLdHXM2CTfE= github.com/ipfs/go-hamt-ipld v0.0.15-0.20200204200533-99b8553ef242/go.mod h1:kq3Pi+UP3oHhAdKexE+kHHYRKMoFNuGero0R7q3hWGg= -github.com/ipfs/go-hamt-ipld v0.0.15-0.20200427192427-f3547695a9a2 h1:FDkU4MGqiRmR4++F9htlLOKkLv81HelVX7slQXYgaVg= -github.com/ipfs/go-hamt-ipld v0.0.15-0.20200427192427-f3547695a9a2/go.mod h1:kq3Pi+UP3oHhAdKexE+kHHYRKMoFNuGero0R7q3hWGg= +github.com/ipfs/go-hamt-ipld v0.1.1-0.20200501020327-d53d20a7063e h1:Klv6s+kbuhh0JVpGFmFK2t6AtZxJfAnVneQHh1DlFOo= +github.com/ipfs/go-hamt-ipld v0.1.1-0.20200501020327-d53d20a7063e/go.mod h1:giiPqWYCnRBYpNTsJ/EX1ojldX5kTXrXYckSJQ7ko9M= github.com/ipfs/go-ipfs-blockstore v0.0.1/go.mod h1:d3WClOmRQKFnJ0Jz/jj/zmksX0ma1gROTlovZKBmN08= github.com/ipfs/go-ipfs-blockstore v0.1.0/go.mod h1:5aD0AvHPi7mZc6Ci1WCAhiBQu2IsfTduLl+422H6Rqw= github.com/ipfs/go-ipfs-blockstore v0.1.1/go.mod h1:8gZOgIN5e+Xdg2YSGdwTTRbguSVjYyosIDRQCY8E9QM= @@ -1008,6 +1008,8 @@ github.com/whyrusleeping/cbor-gen v0.0.0-20200123233031-1cdf64d27158/go.mod h1:X github.com/whyrusleeping/cbor-gen v0.0.0-20200206220010-03c9665e2a66/go.mod h1:Xj/M2wWU+QdTdRbu/L/1dIZY8/Wb2K9pAhtroQuxJJI= github.com/whyrusleeping/cbor-gen v0.0.0-20200414195334-429a0b5e922e h1:JY8o/ebUUrCYetWmjRCNghxC59cOEaili83rxPRQCLw= github.com/whyrusleeping/cbor-gen v0.0.0-20200414195334-429a0b5e922e/go.mod h1:Xj/M2wWU+QdTdRbu/L/1dIZY8/Wb2K9pAhtroQuxJJI= +github.com/whyrusleeping/cbor-gen v0.0.0-20200501014322-5f9941ef88e0 h1:dmdwCOVtJAm7qwONARangN4jgCisVFmSJ486JZ1LYaA= +github.com/whyrusleeping/cbor-gen v0.0.0-20200501014322-5f9941ef88e0/go.mod h1:Xj/M2wWU+QdTdRbu/L/1dIZY8/Wb2K9pAhtroQuxJJI= github.com/whyrusleeping/chunker v0.0.0-20181014151217-fe64bd25879f h1:jQa4QT2UP9WYv2nzyawpKMOCl+Z/jW7djv2/J50lj9E= github.com/whyrusleeping/chunker v0.0.0-20181014151217-fe64bd25879f/go.mod h1:p9UJB6dDgdPgMJZs7UjUOdulKyRr9fqkS+6JKAInPy8= github.com/whyrusleeping/go-ctrlnet v0.0.0-20180313164037-f564fbbdaa95/go.mod h1:SJqKCCPXRfBFCwXjfNT/skfsceF7+MBFLI2OrvuRA7g=