Merge pull request #4813 from filecoin-project/chore/blockstore_nits
Chore/blockstore nits
This commit is contained in:
commit
afe6c51016
@ -311,7 +311,7 @@ FIXME: Maybe mention the `Batching` interface as the developer will stumble upon
|
|||||||
|
|
||||||
FIXME: IPFS blocks vs Filecoin blocks ideally happens before this / here
|
FIXME: IPFS blocks vs Filecoin blocks ideally happens before this / here
|
||||||
|
|
||||||
The [`Blockstore` interface](`github.com/ipfs/go-ipfs-blockstore/blockstore.go`) structures the key-value pair
|
The [`Blockstore` interface](`github.com/filecoin-project/lotus/lib/blockstore.go`) structures the key-value pair
|
||||||
into the CID format for the key and the [`Block` interface](`github.com/ipfs/go-block-format/blocks.go`) for the value.
|
into the CID format for the key and the [`Block` interface](`github.com/ipfs/go-block-format/blocks.go`) for the value.
|
||||||
The `Block` value is just a raw string of bytes addressed by its hash, which is included in the CID key.
|
The `Block` value is just a raw string of bytes addressed by its hash, which is included in the CID key.
|
||||||
|
|
||||||
|
@ -45,12 +45,8 @@ func NewBlockstore(dstore ds.Batching) blockstore.Blockstore {
|
|||||||
// Alias so other packages don't have to import go-ipfs-blockstore
|
// Alias so other packages don't have to import go-ipfs-blockstore
|
||||||
type Blockstore = blockstore.Blockstore
|
type Blockstore = blockstore.Blockstore
|
||||||
type Viewer = blockstore.Viewer
|
type Viewer = blockstore.Viewer
|
||||||
type GCBlockstore = blockstore.GCBlockstore
|
|
||||||
type CacheOpts = blockstore.CacheOpts
|
type CacheOpts = blockstore.CacheOpts
|
||||||
type GCLocker = blockstore.GCLocker
|
|
||||||
|
|
||||||
var NewGCLocker = blockstore.NewGCLocker
|
|
||||||
var NewGCBlockstore = blockstore.NewGCBlockstore
|
|
||||||
var ErrNotFound = blockstore.ErrNotFound
|
var ErrNotFound = blockstore.ErrNotFound
|
||||||
|
|
||||||
func DefaultCacheOpts() CacheOpts {
|
func DefaultCacheOpts() CacheOpts {
|
||||||
|
@ -5,7 +5,6 @@ import (
|
|||||||
|
|
||||||
blocks "github.com/ipfs/go-block-format"
|
blocks "github.com/ipfs/go-block-format"
|
||||||
"github.com/ipfs/go-cid"
|
"github.com/ipfs/go-cid"
|
||||||
blockstore "github.com/ipfs/go-ipfs-blockstore"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// MemStore is a terminal blockstore that keeps blocks in memory.
|
// MemStore is a terminal blockstore that keeps blocks in memory.
|
||||||
@ -24,7 +23,7 @@ func (m MemStore) Has(k cid.Cid) (bool, error) {
|
|||||||
func (m MemStore) View(k cid.Cid, callback func([]byte) error) error {
|
func (m MemStore) View(k cid.Cid, callback func([]byte) error) error {
|
||||||
b, ok := m[k]
|
b, ok := m[k]
|
||||||
if !ok {
|
if !ok {
|
||||||
return blockstore.ErrNotFound
|
return ErrNotFound
|
||||||
}
|
}
|
||||||
return callback(b.RawData())
|
return callback(b.RawData())
|
||||||
}
|
}
|
||||||
@ -32,7 +31,7 @@ func (m MemStore) View(k cid.Cid, callback func([]byte) error) error {
|
|||||||
func (m MemStore) Get(k cid.Cid) (blocks.Block, error) {
|
func (m MemStore) Get(k cid.Cid) (blocks.Block, error) {
|
||||||
b, ok := m[k]
|
b, ok := m[k]
|
||||||
if !ok {
|
if !ok {
|
||||||
return nil, blockstore.ErrNotFound
|
return nil, ErrNotFound
|
||||||
}
|
}
|
||||||
return b, nil
|
return b, nil
|
||||||
}
|
}
|
||||||
@ -41,7 +40,7 @@ func (m MemStore) Get(k cid.Cid) (blocks.Block, error) {
|
|||||||
func (m MemStore) GetSize(k cid.Cid) (int, error) {
|
func (m MemStore) GetSize(k cid.Cid) (int, error) {
|
||||||
b, ok := m[k]
|
b, ok := m[k]
|
||||||
if !ok {
|
if !ok {
|
||||||
return 0, blockstore.ErrNotFound
|
return 0, ErrNotFound
|
||||||
}
|
}
|
||||||
return len(b.RawData()), nil
|
return len(b.RawData()), nil
|
||||||
}
|
}
|
||||||
|
@ -55,7 +55,6 @@ import (
|
|||||||
"github.com/filecoin-project/lotus/extern/sector-storage/storiface"
|
"github.com/filecoin-project/lotus/extern/sector-storage/storiface"
|
||||||
sealing "github.com/filecoin-project/lotus/extern/storage-sealing"
|
sealing "github.com/filecoin-project/lotus/extern/storage-sealing"
|
||||||
"github.com/filecoin-project/lotus/journal"
|
"github.com/filecoin-project/lotus/journal"
|
||||||
"github.com/filecoin-project/lotus/lib/blockstore"
|
|
||||||
"github.com/filecoin-project/lotus/lib/peermgr"
|
"github.com/filecoin-project/lotus/lib/peermgr"
|
||||||
_ "github.com/filecoin-project/lotus/lib/sigs/bls"
|
_ "github.com/filecoin-project/lotus/lib/sigs/bls"
|
||||||
_ "github.com/filecoin-project/lotus/lib/sigs/secp"
|
_ "github.com/filecoin-project/lotus/lib/sigs/secp"
|
||||||
@ -264,8 +263,6 @@ func Online() Option {
|
|||||||
Override(new(api.WalletAPI), From(new(wallet.MultiWallet))),
|
Override(new(api.WalletAPI), From(new(wallet.MultiWallet))),
|
||||||
Override(new(*messagesigner.MessageSigner), messagesigner.NewMessageSigner),
|
Override(new(*messagesigner.MessageSigner), messagesigner.NewMessageSigner),
|
||||||
|
|
||||||
Override(new(dtypes.ChainGCLocker), blockstore.NewGCLocker),
|
|
||||||
Override(new(dtypes.ChainGCBlockstore), modules.ChainGCBlockstore),
|
|
||||||
Override(new(dtypes.ChainBitswap), modules.ChainBitswap),
|
Override(new(dtypes.ChainBitswap), modules.ChainBitswap),
|
||||||
Override(new(dtypes.ChainBlockService), modules.ChainBlockService),
|
Override(new(dtypes.ChainBlockService), modules.ChainBlockService),
|
||||||
|
|
||||||
|
@ -38,7 +38,7 @@ import (
|
|||||||
"github.com/filecoin-project/lotus/node/repo"
|
"github.com/filecoin-project/lotus/node/repo"
|
||||||
)
|
)
|
||||||
|
|
||||||
func ChainBitswap(mctx helpers.MetricsCtx, lc fx.Lifecycle, host host.Host, rt routing.Routing, bs dtypes.ChainGCBlockstore) dtypes.ChainBitswap {
|
func ChainBitswap(mctx helpers.MetricsCtx, lc fx.Lifecycle, host host.Host, rt routing.Routing, bs dtypes.ChainBlockstore) dtypes.ChainBitswap {
|
||||||
// prefix protocol for chain bitswap
|
// prefix protocol for chain bitswap
|
||||||
// (so bitswap uses /chain/ipfs/bitswap/1.0.0 internally for chain sync stuff)
|
// (so bitswap uses /chain/ipfs/bitswap/1.0.0 internally for chain sync stuff)
|
||||||
bitswapNetwork := network.NewFromIpfsHost(host, rt, network.Prefix("/chain"))
|
bitswapNetwork := network.NewFromIpfsHost(host, rt, network.Prefix("/chain"))
|
||||||
@ -91,10 +91,6 @@ func ChainRawBlockstore(lc fx.Lifecycle, mctx helpers.MetricsCtx, r repo.LockedR
|
|||||||
return cbs, nil
|
return cbs, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func ChainGCBlockstore(bs dtypes.ChainRawBlockstore, gcl dtypes.ChainGCLocker) dtypes.ChainGCBlockstore {
|
|
||||||
return blockstore.NewGCBlockstore(bs, gcl)
|
|
||||||
}
|
|
||||||
|
|
||||||
func ChainBlockService(bs dtypes.ChainRawBlockstore, rem dtypes.ChainBitswap) dtypes.ChainBlockService {
|
func ChainBlockService(bs dtypes.ChainRawBlockstore, rem dtypes.ChainBitswap) dtypes.ChainBlockService {
|
||||||
return blockservice.New(bs, rem)
|
return blockservice.New(bs, rem)
|
||||||
}
|
}
|
||||||
|
@ -26,8 +26,6 @@ type MetadataDS datastore.Batching
|
|||||||
type ChainRawBlockstore blockstore.Blockstore
|
type ChainRawBlockstore blockstore.Blockstore
|
||||||
type ChainBlockstore blockstore.Blockstore // optionally bitswap backed
|
type ChainBlockstore blockstore.Blockstore // optionally bitswap backed
|
||||||
|
|
||||||
type ChainGCLocker blockstore.GCLocker
|
|
||||||
type ChainGCBlockstore blockstore.GCBlockstore
|
|
||||||
type ChainBitswap exchange.Interface
|
type ChainBitswap exchange.Interface
|
||||||
type ChainBlockService bserv.BlockService
|
type ChainBlockService bserv.BlockService
|
||||||
|
|
||||||
|
@ -12,9 +12,9 @@ import (
|
|||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
"github.com/BurntSushi/toml"
|
"github.com/BurntSushi/toml"
|
||||||
|
"github.com/filecoin-project/lotus/lib/blockstore"
|
||||||
"github.com/ipfs/go-datastore"
|
"github.com/ipfs/go-datastore"
|
||||||
fslock "github.com/ipfs/go-fs-lock"
|
fslock "github.com/ipfs/go-fs-lock"
|
||||||
blockstore "github.com/ipfs/go-ipfs-blockstore"
|
|
||||||
logging "github.com/ipfs/go-log/v2"
|
logging "github.com/ipfs/go-log/v2"
|
||||||
"github.com/mitchellh/go-homedir"
|
"github.com/mitchellh/go-homedir"
|
||||||
"github.com/multiformats/go-base32"
|
"github.com/multiformats/go-base32"
|
||||||
|
@ -3,8 +3,8 @@ package repo
|
|||||||
import (
|
import (
|
||||||
"errors"
|
"errors"
|
||||||
|
|
||||||
|
"github.com/filecoin-project/lotus/lib/blockstore"
|
||||||
"github.com/ipfs/go-datastore"
|
"github.com/ipfs/go-datastore"
|
||||||
blockstore "github.com/ipfs/go-ipfs-blockstore"
|
|
||||||
"github.com/multiformats/go-multiaddr"
|
"github.com/multiformats/go-multiaddr"
|
||||||
|
|
||||||
"github.com/filecoin-project/lotus/extern/sector-storage/fsutil"
|
"github.com/filecoin-project/lotus/extern/sector-storage/fsutil"
|
||||||
|
@ -9,13 +9,13 @@ import (
|
|||||||
"github.com/ipfs/go-datastore"
|
"github.com/ipfs/go-datastore"
|
||||||
"github.com/ipfs/go-datastore/query"
|
"github.com/ipfs/go-datastore/query"
|
||||||
dss "github.com/ipfs/go-datastore/sync"
|
dss "github.com/ipfs/go-datastore/sync"
|
||||||
blockstore "github.com/ipfs/go-ipfs-blockstore"
|
|
||||||
format "github.com/ipfs/go-ipld-format"
|
format "github.com/ipfs/go-ipld-format"
|
||||||
dag "github.com/ipfs/go-merkledag"
|
dag "github.com/ipfs/go-merkledag"
|
||||||
"github.com/stretchr/testify/require"
|
"github.com/stretchr/testify/require"
|
||||||
|
|
||||||
"github.com/filecoin-project/go-multistore"
|
"github.com/filecoin-project/go-multistore"
|
||||||
|
|
||||||
|
"github.com/filecoin-project/lotus/lib/blockstore"
|
||||||
"github.com/filecoin-project/lotus/node/repo/importmgr"
|
"github.com/filecoin-project/lotus/node/repo/importmgr"
|
||||||
"github.com/filecoin-project/lotus/node/repo/retrievalstoremgr"
|
"github.com/filecoin-project/lotus/node/repo/retrievalstoremgr"
|
||||||
)
|
)
|
||||||
|
Loading…
Reference in New Issue
Block a user