sectorstore: Address review feetback
This commit is contained in:
parent
e6493afd46
commit
baf4fbe309
@ -1,14 +1,14 @@
|
|||||||
package sectorbuilder
|
package sectorbuilder_test
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
|
||||||
"fmt"
|
|
||||||
"io"
|
"io"
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
"math/rand"
|
"math/rand"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/filecoin-project/go-lotus/chain/address"
|
"github.com/filecoin-project/go-lotus/chain/address"
|
||||||
|
"github.com/filecoin-project/go-lotus/lib/sectorbuilder"
|
||||||
|
"github.com/filecoin-project/go-lotus/storage/sector"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestSealAndVerify(t *testing.T) {
|
func TestSealAndVerify(t *testing.T) {
|
||||||
@ -23,7 +23,7 @@ func TestSealAndVerify(t *testing.T) {
|
|||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
sb, err := New(&SectorBuilderConfig{
|
sb, err := sectorbuilder.New(§orbuilder.SectorBuilderConfig{
|
||||||
SectorSize: 1024,
|
SectorSize: 1024,
|
||||||
SealedDir: dir,
|
SealedDir: dir,
|
||||||
StagedDir: dir,
|
StagedDir: dir,
|
||||||
@ -34,11 +34,6 @@ func TestSealAndVerify(t *testing.T) {
|
|||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
ctx, cancel := context.WithCancel(context.Background())
|
|
||||||
defer cancel()
|
|
||||||
|
|
||||||
sb.Run(ctx)
|
|
||||||
|
|
||||||
fi, err := ioutil.TempFile("", "sbtestfi")
|
fi, err := ioutil.TempFile("", "sbtestfi")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
@ -51,10 +46,11 @@ func TestSealAndVerify(t *testing.T) {
|
|||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
ssinfo := <-sb.SealedSectorChan()
|
store := sector.NewStore(sb)
|
||||||
fmt.Println("sector sealed...")
|
store.Service()
|
||||||
|
ssinfo := <-store.Incoming()
|
||||||
|
|
||||||
ok, err := VerifySeal(1024, ssinfo.CommR[:], ssinfo.CommD[:], ssinfo.CommRStar[:], addr, ssinfo.SectorID, ssinfo.Proof)
|
ok, err := sectorbuilder.VerifySeal(1024, ssinfo.CommR[:], ssinfo.CommD[:], ssinfo.CommRStar[:], addr, ssinfo.SectorID, ssinfo.Proof)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
|
@ -3,14 +3,14 @@ package impl
|
|||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"fmt"
|
"fmt"
|
||||||
"github.com/filecoin-project/go-lotus/chain/address"
|
|
||||||
"github.com/filecoin-project/go-lotus/storage/sector"
|
|
||||||
"io"
|
"io"
|
||||||
"math/rand"
|
"math/rand"
|
||||||
|
|
||||||
"github.com/filecoin-project/go-lotus/api"
|
"github.com/filecoin-project/go-lotus/api"
|
||||||
|
"github.com/filecoin-project/go-lotus/chain/address"
|
||||||
"github.com/filecoin-project/go-lotus/lib/sectorbuilder"
|
"github.com/filecoin-project/go-lotus/lib/sectorbuilder"
|
||||||
"github.com/filecoin-project/go-lotus/storage"
|
"github.com/filecoin-project/go-lotus/storage"
|
||||||
|
"github.com/filecoin-project/go-lotus/storage/sector"
|
||||||
)
|
)
|
||||||
|
|
||||||
type StorageMinerAPI struct {
|
type StorageMinerAPI struct {
|
||||||
|
@ -24,14 +24,14 @@ type Store struct {
|
|||||||
incoming []chan sectorbuilder.SectorSealingStatus
|
incoming []chan sectorbuilder.SectorSealingStatus
|
||||||
// TODO: outdated chan
|
// TODO: outdated chan
|
||||||
|
|
||||||
close chan struct{}
|
closeCh chan struct{}
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewStore(sb *sectorbuilder.SectorBuilder) *Store {
|
func NewStore(sb *sectorbuilder.SectorBuilder) *Store {
|
||||||
return &Store{
|
return &Store{
|
||||||
sb: sb,
|
sb: sb,
|
||||||
waiting: map[uint64]chan struct{}{},
|
waiting: map[uint64]chan struct{}{},
|
||||||
close: make(chan struct{}),
|
closeCh: make(chan struct{}),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -88,7 +88,7 @@ func (s *Store) service() {
|
|||||||
select {
|
select {
|
||||||
case <-poll:
|
case <-poll:
|
||||||
s.poll()
|
s.poll()
|
||||||
case <-s.close:
|
case <-s.closeCh:
|
||||||
s.lk.Lock()
|
s.lk.Lock()
|
||||||
for _, c := range s.incoming {
|
for _, c := range s.incoming {
|
||||||
close(c)
|
close(c)
|
||||||
@ -131,7 +131,9 @@ func (s *Store) CloseIncoming(c <-chan sectorbuilder.SectorSealingStatus) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
if len(s.incoming) > 1 {
|
if len(s.incoming) > 1 {
|
||||||
s.incoming[at] = s.incoming[len(s.incoming)-1]
|
last := len(s.incoming) - 1
|
||||||
|
s.incoming[at] = s.incoming[last]
|
||||||
|
s.incoming[last] = nil
|
||||||
}
|
}
|
||||||
s.incoming = s.incoming[:len(s.incoming)-1]
|
s.incoming = s.incoming[:len(s.incoming)-1]
|
||||||
s.lk.Unlock()
|
s.lk.Unlock()
|
||||||
@ -161,7 +163,7 @@ func (s *Store) WaitSeal(ctx context.Context, sector uint64) (sectorbuilder.Sect
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (s *Store) Stop() {
|
func (s *Store) Stop() {
|
||||||
close(s.close)
|
close(s.closeCh)
|
||||||
}
|
}
|
||||||
|
|
||||||
func withTemp(r io.Reader, cb func(string) error) error {
|
func withTemp(r io.Reader, cb func(string) error) error {
|
||||||
@ -178,7 +180,9 @@ func withTemp(r io.Reader, cb func(string) error) error {
|
|||||||
|
|
||||||
err = cb(f.Name())
|
err = cb(f.Name())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
os.Remove(f.Name())
|
if err := os.Remove(f.Name()); err != nil {
|
||||||
|
log.Errorf("couldn't remove temp file '%s'", f.Name())
|
||||||
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user