From 97fd8f136e45efdc99e70a06257822c40ff8fe18 Mon Sep 17 00:00:00 2001 From: Tess Rinearson Date: Fri, 6 Aug 2021 11:46:34 +0200 Subject: [PATCH] all: update tm-db to 0.6.5 --- abci/example/kvstore/kvstore.go | 6 +- abci/example/kvstore/persistent_kvstore.go | 5 +- cmd/tendermint/commands/light.go | 3 +- cmd/tendermint/commands/reindex_event.go | 2 +- config/db.go | 5 +- go.sum | 2 + internal/blocksync/v0/reactor_test.go | 6 +- internal/blocksync/v2/reactor_test.go | 10 +-- internal/consensus/byzantine_test.go | 9 ++- internal/consensus/common_test.go | 9 +-- internal/consensus/mempool_test.go | 11 ++- internal/consensus/reactor_test.go | 6 +- internal/consensus/replay_file.go | 3 +- internal/consensus/replay_test.go | 15 ++-- internal/consensus/wal_generator.go | 4 +- internal/evidence/pool_test.go | 17 ++-- internal/evidence/reactor_test.go | 5 +- internal/evidence/verify_test.go | 21 +++-- internal/p2p/p2ptest/network.go | 4 +- internal/p2p/peermanager_scoring_test.go | 4 +- internal/p2p/peermanager_test.go | 92 +++++++++++----------- internal/p2p/pex/reactor_test.go | 4 +- internal/p2p/router_test.go | 22 +++--- internal/statesync/reactor_test.go | 4 +- internal/statesync/stateprovider.go | 7 +- light/client_benchmark_test.go | 9 +-- light/client_test.go | 43 +++++----- light/detector_test.go | 19 +++-- light/doc.go | 2 +- light/example_test.go | 5 +- light/light_test.go | 6 +- light/store/db/db_test.go | 13 ++- node/node_test.go | 13 +-- rpc/core/blocks_test.go | 5 +- scripts/keymigrate/migrate_test.go | 9 ++- state/execution_test.go | 10 +-- state/helpers_test.go | 3 +- state/indexer/block/kv/kv_test.go | 3 +- state/indexer/indexer_service_test.go | 4 +- state/indexer/sink/kv/kv_test.go | 16 ++-- state/indexer/tx/kv/kv_bench_test.go | 5 +- state/indexer/tx/kv/kv_test.go | 15 ++-- state/state_test.go | 3 +- state/store_test.go | 12 +-- state/validation_test.go | 8 +- store/store_test.go | 9 ++- 46 files changed, 243 insertions(+), 245 deletions(-) diff --git a/abci/example/kvstore/kvstore.go b/abci/example/kvstore/kvstore.go index 97256c8ac..8e81d6d63 100644 --- a/abci/example/kvstore/kvstore.go +++ b/abci/example/kvstore/kvstore.go @@ -6,11 +6,11 @@ import ( "encoding/json" "fmt" - dbm "github.com/tendermint/tm-db" - "github.com/tendermint/tendermint/abci/example/code" "github.com/tendermint/tendermint/abci/types" "github.com/tendermint/tendermint/version" + dbm "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" ) var ( @@ -71,7 +71,7 @@ type Application struct { } func NewApplication() *Application { - state := loadState(dbm.NewMemDB()) + state := loadState(memdb.NewDB()) return &Application{state: state} } diff --git a/abci/example/kvstore/persistent_kvstore.go b/abci/example/kvstore/persistent_kvstore.go index 0fcfcadf7..595ee9221 100644 --- a/abci/example/kvstore/persistent_kvstore.go +++ b/abci/example/kvstore/persistent_kvstore.go @@ -7,13 +7,12 @@ import ( "strconv" "strings" - dbm "github.com/tendermint/tm-db" - "github.com/tendermint/tendermint/abci/example/code" "github.com/tendermint/tendermint/abci/types" cryptoenc "github.com/tendermint/tendermint/crypto/encoding" "github.com/tendermint/tendermint/libs/log" pc "github.com/tendermint/tendermint/proto/tendermint/crypto" + "github.com/tendermint/tm-db/goleveldb" ) const ( @@ -37,7 +36,7 @@ type PersistentKVStoreApplication struct { func NewPersistentKVStoreApplication(dbDir string) *PersistentKVStoreApplication { name := "kvstore" - db, err := dbm.NewGoLevelDB(name, dbDir) + db, err := goleveldb.NewDB(name, dbDir) if err != nil { panic(err) } diff --git a/cmd/tendermint/commands/light.go b/cmd/tendermint/commands/light.go index 5e7446e51..139e35643 100644 --- a/cmd/tendermint/commands/light.go +++ b/cmd/tendermint/commands/light.go @@ -13,6 +13,7 @@ import ( "github.com/spf13/cobra" dbm "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/goleveldb" "github.com/tendermint/tendermint/libs/log" tmmath "github.com/tendermint/tendermint/libs/math" @@ -115,7 +116,7 @@ func runProxy(cmd *cobra.Command, args []string) error { witnessesAddrs = strings.Split(witnessAddrsJoined, ",") } - lightDB, err := dbm.NewGoLevelDB("light-client-db", dir) + lightDB, err := goleveldb.NewDB("light-client-db", dir) if err != nil { return fmt.Errorf("can't create a db: %w", err) } diff --git a/cmd/tendermint/commands/reindex_event.go b/cmd/tendermint/commands/reindex_event.go index ddc585c1f..62bcd2ae7 100644 --- a/cmd/tendermint/commands/reindex_event.go +++ b/cmd/tendermint/commands/reindex_event.go @@ -6,7 +6,7 @@ import ( "strings" "github.com/spf13/cobra" - tmdb "github.com/tendermint/tm-db" + tmdb "github.com/tendermint/tm-db/metadb" abcitypes "github.com/tendermint/tendermint/abci/types" tmcfg "github.com/tendermint/tendermint/config" diff --git a/config/db.go b/config/db.go index 3ae274a50..a4ab576b2 100644 --- a/config/db.go +++ b/config/db.go @@ -4,6 +4,7 @@ import ( "github.com/tendermint/tendermint/libs/log" "github.com/tendermint/tendermint/libs/service" db "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/metadb" ) // ServiceProvider takes a config and a logger and returns a ready to go Node. @@ -21,6 +22,6 @@ type DBProvider func(*DBContext) (db.DB, error) // DefaultDBProvider returns a database using the DBBackend and DBDir // specified in the Config. func DefaultDBProvider(ctx *DBContext) (db.DB, error) { - dbType := db.BackendType(ctx.Config.DBBackend) - return db.NewDB(ctx.ID, dbType, ctx.Config.DBDir()) + dbType := metadb.BackendType(ctx.Config.DBBackend) + return metadb.NewDB(ctx.ID, dbType, ctx.Config.DBDir()) } diff --git a/go.sum b/go.sum index ec2a6854a..0c73beb19 100644 --- a/go.sum +++ b/go.sum @@ -322,6 +322,7 @@ github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw= github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/golang/snappy v0.0.1 h1:Qgr9rKW7uDUkrbSmQeiDsGa8SjGyCOGtuasMWwvp2P4= github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/golangci/check v0.0.0-20180506172741-cfe4005ccda2 h1:23T5iq8rbUYlhpt5DB4XJkc6BU31uODLD1o1gKvZmD0= github.com/golangci/check v0.0.0-20180506172741-cfe4005ccda2/go.mod h1:k9Qvh+8juN+UKMCS/3jFtGICgW8O96FVaZsaxdzDkR4= @@ -842,6 +843,7 @@ github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5Cc github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/subosito/gotenv v1.2.0 h1:Slr1R9HxAlEKefgq5jn9U+DnETlIUa6HfgEzj0g5d7s= github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw= +github.com/syndtr/goleveldb v1.0.1-0.20200815110645-5c35d600f0ca h1:Ld/zXl5t4+D69SiV4JoN7kkfvJdOWlPpfxrzxpLMoUk= github.com/syndtr/goleveldb v1.0.1-0.20200815110645-5c35d600f0ca/go.mod h1:u2MKkTVTVJWe5D1rCvame8WqhBd88EuIwODJZ1VHCPM= github.com/tdakkota/asciicheck v0.0.0-20200416200610-e657995f937b h1:HxLVTlqcHhFAz3nWUcuvpH7WuOMv8LQoCWmruLfFH2U= github.com/tdakkota/asciicheck v0.0.0-20200416200610-e657995f937b/go.mod h1:yHp0ai0Z9gUljN3o0xMhYJnH/IcvkdTBOX2fmJ93JEM= diff --git a/internal/blocksync/v0/reactor_test.go b/internal/blocksync/v0/reactor_test.go index e038b57af..5e8fd7d97 100644 --- a/internal/blocksync/v0/reactor_test.go +++ b/internal/blocksync/v0/reactor_test.go @@ -21,7 +21,7 @@ import ( sf "github.com/tendermint/tendermint/state/test/factory" "github.com/tendermint/tendermint/store" "github.com/tendermint/tendermint/types" - dbm "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" ) type reactorTestSuite struct { @@ -100,8 +100,8 @@ func (rts *reactorTestSuite) addNode(t *testing.T, rts.app[nodeID] = proxy.NewAppConns(proxy.NewLocalClientCreator(&abci.BaseApplication{})) require.NoError(t, rts.app[nodeID].Start()) - blockDB := dbm.NewMemDB() - stateDB := dbm.NewMemDB() + blockDB := memdb.NewDB() + stateDB := memdb.NewDB() stateStore := sm.NewStore(stateDB) blockStore := store.NewBlockStore(blockDB) diff --git a/internal/blocksync/v2/reactor_test.go b/internal/blocksync/v2/reactor_test.go index 4120b3942..644ab7e85 100644 --- a/internal/blocksync/v2/reactor_test.go +++ b/internal/blocksync/v2/reactor_test.go @@ -11,7 +11,6 @@ import ( "github.com/gogo/protobuf/proto" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" abci "github.com/tendermint/tendermint/abci/types" cfg "github.com/tendermint/tendermint/config" @@ -29,6 +28,7 @@ import ( sf "github.com/tendermint/tendermint/state/test/factory" tmstore "github.com/tendermint/tendermint/store" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) type mockPeer struct { @@ -167,9 +167,9 @@ func newTestReactor(t *testing.T, p testReactorParams) *BlockchainReactor { proxyApp := proxy.NewAppConns(cc) err := proxyApp.Start() require.NoError(t, err) - db := dbm.NewMemDB() + db := memdb.NewDB() stateStore := sm.NewStore(db) - blockStore := tmstore.NewBlockStore(dbm.NewMemDB()) + blockStore := tmstore.NewBlockStore(memdb.NewDB()) appl = sm.NewBlockExecutor( stateStore, p.logger, proxyApp.Consensus(), mock.Mempool{}, sm.EmptyEvidencePool{}, blockStore) err = stateStore.Save(state) @@ -489,8 +489,8 @@ func newReactorStore( panic(fmt.Errorf("error start app: %w", err)) } - stateDB := dbm.NewMemDB() - blockStore := tmstore.NewBlockStore(dbm.NewMemDB()) + stateDB := memdb.NewDB() + blockStore := tmstore.NewBlockStore(memdb.NewDB()) stateStore := sm.NewStore(stateDB) state, err := sm.MakeGenesisState(genDoc) require.NoError(t, err) diff --git a/internal/consensus/byzantine_test.go b/internal/consensus/byzantine_test.go index 1c6ec858b..b354cd098 100644 --- a/internal/consensus/byzantine_test.go +++ b/internal/consensus/byzantine_test.go @@ -10,6 +10,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" + abcicli "github.com/tendermint/tendermint/abci/client" abci "github.com/tendermint/tendermint/abci/types" "github.com/tendermint/tendermint/internal/evidence" @@ -23,7 +24,7 @@ import ( sm "github.com/tendermint/tendermint/state" "github.com/tendermint/tendermint/store" "github.com/tendermint/tendermint/types" - dbm "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" ) // Byzantine node sends two different prevotes (nil and blockID) to the same @@ -43,7 +44,7 @@ func TestByzantinePrevoteEquivocation(t *testing.T) { for i := 0; i < nValidators; i++ { func() { logger := consensusLogger().With("test", "byzantine", "validator", i) - stateDB := dbm.NewMemDB() // each state needs its own db + stateDB := memdb.NewDB() // each state needs its own db stateStore := sm.NewStore(stateDB) state, err := sm.MakeGenesisState(genDoc) require.NoError(t, err) @@ -57,7 +58,7 @@ func TestByzantinePrevoteEquivocation(t *testing.T) { vals := types.TM2PB.ValidatorUpdates(state.Validators) app.InitChain(abci.RequestInitChain{Validators: vals}) - blockDB := dbm.NewMemDB() + blockDB := memdb.NewDB() blockStore := store.NewBlockStore(blockDB) // one for mempool, one for consensus @@ -73,7 +74,7 @@ func TestByzantinePrevoteEquivocation(t *testing.T) { } // Make a full instance of the evidence pool - evidenceDB := dbm.NewMemDB() + evidenceDB := memdb.NewDB() evpool, err := evidence.NewPool(logger.With("module", "evidence"), evidenceDB, stateStore, blockStore) require.NoError(t, err) diff --git a/internal/consensus/common_test.go b/internal/consensus/common_test.go index 17ba1ce2e..38acdc8f3 100644 --- a/internal/consensus/common_test.go +++ b/internal/consensus/common_test.go @@ -16,8 +16,6 @@ import ( "path" - dbm "github.com/tendermint/tm-db" - abcicli "github.com/tendermint/tendermint/abci/client" "github.com/tendermint/tendermint/abci/example/kvstore" abci "github.com/tendermint/tendermint/abci/types" @@ -36,6 +34,7 @@ import ( sm "github.com/tendermint/tendermint/state" "github.com/tendermint/tendermint/store" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) const ( @@ -397,7 +396,7 @@ func newStateWithConfig( pv types.PrivValidator, app abci.Application, ) *State { - blockStore := store.NewBlockStore(dbm.NewMemDB()) + blockStore := store.NewBlockStore(memdb.NewDB()) return newStateWithConfigAndBlockStore(thisConfig, state, pv, app, blockStore) } @@ -423,7 +422,7 @@ func newStateWithConfigAndBlockStore( evpool := sm.EmptyEvidencePool{} // Make State - stateDB := dbm.NewMemDB() + stateDB := memdb.NewDB() stateStore := sm.NewStore(stateDB) if err := stateStore.Save(state); err != nil { // for save height 1's validators info panic(err) @@ -721,7 +720,7 @@ func randConsensusState( configRootDirs := make([]string, 0, nValidators) for i := 0; i < nValidators; i++ { - blockStore := store.NewBlockStore(dbm.NewMemDB()) // each state needs its own db + blockStore := store.NewBlockStore(memdb.NewDB()) // each state needs its own db state, err := sm.MakeGenesisState(genDoc) require.NoError(t, err) thisConfig := ResetConfig(fmt.Sprintf("%s_%d", testName, i)) diff --git a/internal/consensus/mempool_test.go b/internal/consensus/mempool_test.go index 5edec248a..8ba3e259a 100644 --- a/internal/consensus/mempool_test.go +++ b/internal/consensus/mempool_test.go @@ -11,14 +11,13 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" - "github.com/tendermint/tendermint/abci/example/code" abci "github.com/tendermint/tendermint/abci/types" mempl "github.com/tendermint/tendermint/internal/mempool" sm "github.com/tendermint/tendermint/state" "github.com/tendermint/tendermint/store" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) // for testing @@ -124,8 +123,8 @@ func TestMempoolTxConcurrentWithCommit(t *testing.T) { config := configSetup(t) state, privVals := randGenesisState(config, 1, false, 10) - stateStore := sm.NewStore(dbm.NewMemDB()) - blockStore := store.NewBlockStore(dbm.NewMemDB()) + stateStore := sm.NewStore(memdb.NewDB()) + blockStore := store.NewBlockStore(memdb.NewDB()) cs := newStateWithConfigAndBlockStore(config, state, privVals[0], NewCounterApplication(), blockStore) err := stateStore.Save(state) require.NoError(t, err) @@ -151,8 +150,8 @@ func TestMempoolRmBadTx(t *testing.T) { state, privVals := randGenesisState(config, 1, false, 10) app := NewCounterApplication() - stateStore := sm.NewStore(dbm.NewMemDB()) - blockStore := store.NewBlockStore(dbm.NewMemDB()) + stateStore := sm.NewStore(memdb.NewDB()) + blockStore := store.NewBlockStore(memdb.NewDB()) cs := newStateWithConfigAndBlockStore(config, state, privVals[0], app, blockStore) err := stateStore.Save(state) require.NoError(t, err) diff --git a/internal/consensus/reactor_test.go b/internal/consensus/reactor_test.go index 8c70ca1d5..9cd970b9c 100644 --- a/internal/consensus/reactor_test.go +++ b/internal/consensus/reactor_test.go @@ -31,7 +31,7 @@ import ( statemocks "github.com/tendermint/tendermint/state/mocks" "github.com/tendermint/tendermint/store" "github.com/tendermint/tendermint/types" - dbm "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" ) var ( @@ -328,7 +328,7 @@ func TestReactorWithEvidence(t *testing.T) { logger := consensusLogger() for i := 0; i < n; i++ { - stateDB := dbm.NewMemDB() // each state needs its own db + stateDB := memdb.NewDB() // each state needs its own db stateStore := sm.NewStore(stateDB) state, err := sm.MakeGenesisState(genDoc) require.NoError(t, err) @@ -342,7 +342,7 @@ func TestReactorWithEvidence(t *testing.T) { app.InitChain(abci.RequestInitChain{Validators: vals}) pv := privVals[i] - blockDB := dbm.NewMemDB() + blockDB := memdb.NewDB() blockStore := store.NewBlockStore(blockDB) // one for mempool, one for consensus diff --git a/internal/consensus/replay_file.go b/internal/consensus/replay_file.go index 51cb090d7..e9e3b92fb 100644 --- a/internal/consensus/replay_file.go +++ b/internal/consensus/replay_file.go @@ -10,8 +10,6 @@ import ( "strconv" "strings" - dbm "github.com/tendermint/tm-db" - cfg "github.com/tendermint/tendermint/config" "github.com/tendermint/tendermint/libs/log" tmos "github.com/tendermint/tendermint/libs/os" @@ -20,6 +18,7 @@ import ( sm "github.com/tendermint/tendermint/state" "github.com/tendermint/tendermint/store" "github.com/tendermint/tendermint/types" + dbm "github.com/tendermint/tm-db/metadb" ) const ( diff --git a/internal/consensus/replay_test.go b/internal/consensus/replay_test.go index 4d1c9c6b2..eb2bd5ea5 100644 --- a/internal/consensus/replay_test.go +++ b/internal/consensus/replay_test.go @@ -17,7 +17,6 @@ import ( "github.com/gogo/protobuf/proto" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" "github.com/tendermint/tendermint/abci/example/kvstore" abci "github.com/tendermint/tendermint/abci/types" @@ -36,6 +35,8 @@ import ( sf "github.com/tendermint/tendermint/state/test/factory" "github.com/tendermint/tendermint/store" "github.com/tendermint/tendermint/types" + dbm "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" ) // These tests ensure we can always recover from failure at any part of the consensus process. @@ -59,7 +60,7 @@ func startNewStateAndWaitForBlock(t *testing.T, consensusReplayConfig *cfg.Confi state, err := sm.MakeGenesisStateFromFile(consensusReplayConfig.GenesisFile()) require.NoError(t, err) privValidator := loadPrivValidator(consensusReplayConfig) - blockStore := store.NewBlockStore(dbm.NewMemDB()) + blockStore := store.NewBlockStore(memdb.NewDB()) cs := newStateWithConfigAndBlockStore( consensusReplayConfig, state, @@ -148,8 +149,8 @@ LOOP: // create consensus state from a clean slate logger := log.NewNopLogger() - blockDB := dbm.NewMemDB() - stateDB := dbm.NewMemDB() + blockDB := memdb.NewDB() + stateDB := memdb.NewDB() stateStore := sm.NewStore(stateDB) blockStore := store.NewBlockStore(blockDB) state, err := sm.MakeGenesisStateFromFile(consensusReplayConfig.GenesisFile()) @@ -691,7 +692,7 @@ func testHandshakeReplay(t *testing.T, sim *simulatorTestSuite, nBlocks int, mod if testValidatorsChange { testConfig := ResetConfig(fmt.Sprintf("%s_%v_m", t.Name(), mode)) defer func() { _ = os.RemoveAll(testConfig.RootDir) }() - stateDB = dbm.NewMemDB() + stateDB = memdb.NewDB() genesisState = sim.GenesisState config = sim.Config @@ -745,7 +746,7 @@ func testHandshakeReplay(t *testing.T, sim *simulatorTestSuite, nBlocks int, mod // run nBlocks against a new client to build up the app state. // use a throwaway tendermint state proxyApp := proxy.NewAppConns(clientCreator2) - stateDB1 := dbm.NewMemDB() + stateDB1 := memdb.NewDB() stateStore := sm.NewStore(stateDB1) err := stateStore.Save(genesisState) require.NoError(t, err) @@ -1155,7 +1156,7 @@ func stateAndStore( config *cfg.Config, pubKey crypto.PubKey, appVersion uint64) (dbm.DB, sm.State, *mockBlockStore) { - stateDB := dbm.NewMemDB() + stateDB := memdb.NewDB() stateStore := sm.NewStore(stateDB) state, _ := sm.MakeGenesisStateFromFile(config.GenesisFile()) state.Version.Consensus.App = appVersion diff --git a/internal/consensus/wal_generator.go b/internal/consensus/wal_generator.go index 81c2125ca..a7e551314 100644 --- a/internal/consensus/wal_generator.go +++ b/internal/consensus/wal_generator.go @@ -11,7 +11,6 @@ import ( "time" "github.com/stretchr/testify/require" - db "github.com/tendermint/tm-db" "github.com/tendermint/tendermint/abci/example/kvstore" cfg "github.com/tendermint/tendermint/config" @@ -21,6 +20,7 @@ import ( sm "github.com/tendermint/tendermint/state" "github.com/tendermint/tendermint/store" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) // WALGenerateNBlocks generates a consensus WAL. It does this by spinning up a @@ -50,7 +50,7 @@ func WALGenerateNBlocks(t *testing.T, wr io.Writer, numBlocks int) (err error) { if err != nil { return fmt.Errorf("failed to read genesis file: %w", err) } - blockStoreDB := db.NewMemDB() + blockStoreDB := memdb.NewDB() stateDB := blockStoreDB stateStore := sm.NewStore(stateDB) state, err := sm.MakeGenesisState(genDoc) diff --git a/internal/evidence/pool_test.go b/internal/evidence/pool_test.go index ac5f27b8e..06e311058 100644 --- a/internal/evidence/pool_test.go +++ b/internal/evidence/pool_test.go @@ -10,6 +10,7 @@ import ( "github.com/stretchr/testify/require" dbm "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" "github.com/tendermint/tendermint/internal/evidence" "github.com/tendermint/tendermint/internal/evidence/mocks" @@ -34,7 +35,7 @@ func TestEvidencePoolBasic(t *testing.T) { var ( height = int64(1) stateStore = &smmocks.Store{} - evidenceDB = dbm.NewMemDB() + evidenceDB = memdb.NewDB() blockStore = &mocks.BlockStore{} ) @@ -92,7 +93,7 @@ func TestAddExpiredEvidence(t *testing.T) { val = types.NewMockPV() height = int64(30) stateStore = initializeValidatorState(t, val, height) - evidenceDB = dbm.NewMemDB() + evidenceDB = memdb.NewDB() blockStore = &mocks.BlockStore{} expiredEvidenceTime = time.Date(2018, 1, 1, 0, 0, 0, 0, time.UTC) expiredHeight = int64(2) @@ -292,7 +293,7 @@ func TestLightClientAttackEvidenceLifecycle(t *testing.T) { blockStore.On("LoadBlockCommit", height).Return(trusted.Commit) blockStore.On("LoadBlockCommit", commonHeight).Return(common.Commit) - pool, err := evidence.NewPool(log.TestingLogger(), dbm.NewMemDB(), stateStore, blockStore) + pool, err := evidence.NewPool(log.TestingLogger(), memdb.NewDB(), stateStore, blockStore) require.NoError(t, err) hash := ev.Hash() @@ -329,13 +330,13 @@ func TestRecoverPendingEvidence(t *testing.T) { height := int64(10) val := types.NewMockPV() valAddress := val.PrivKey.PubKey().Address() - evidenceDB := dbm.NewMemDB() + evidenceDB := memdb.NewDB() stateStore := initializeValidatorState(t, val, height) state, err := stateStore.Load() require.NoError(t, err) - blockStore := initializeBlockStore(dbm.NewMemDB(), state, valAddress) + blockStore := initializeBlockStore(memdb.NewDB(), state, valAddress) // create previous pool and populate it pool, err := evidence.NewPool(log.TestingLogger(), evidenceDB, stateStore, blockStore) @@ -386,7 +387,7 @@ func TestRecoverPendingEvidence(t *testing.T) { } func initializeStateFromValidatorSet(t *testing.T, valSet *types.ValidatorSet, height int64) sm.Store { - stateDB := dbm.NewMemDB() + stateDB := memdb.NewDB() stateStore := sm.NewStore(stateDB) state := sm.State{ ChainID: evidenceChainID, @@ -466,10 +467,10 @@ func makeCommit(height int64, valAddr []byte) *types.Commit { func defaultTestPool(t *testing.T, height int64) (*evidence.Pool, types.MockPV) { val := types.NewMockPV() valAddress := val.PrivKey.PubKey().Address() - evidenceDB := dbm.NewMemDB() + evidenceDB := memdb.NewDB() stateStore := initializeValidatorState(t, val, height) state, _ := stateStore.Load() - blockStore := initializeBlockStore(dbm.NewMemDB(), state, valAddress) + blockStore := initializeBlockStore(memdb.NewDB(), state, valAddress) pool, err := evidence.NewPool(log.TestingLogger(), evidenceDB, stateStore, blockStore) require.NoError(t, err, "test evidence pool could not be created") diff --git a/internal/evidence/reactor_test.go b/internal/evidence/reactor_test.go index b098eb373..46a9b9989 100644 --- a/internal/evidence/reactor_test.go +++ b/internal/evidence/reactor_test.go @@ -12,8 +12,6 @@ import ( "github.com/stretchr/testify/mock" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" - "github.com/tendermint/tendermint/crypto" "github.com/tendermint/tendermint/crypto/tmhash" "github.com/tendermint/tendermint/internal/evidence" @@ -24,6 +22,7 @@ import ( tmproto "github.com/tendermint/tendermint/proto/tendermint/types" sm "github.com/tendermint/tendermint/state" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) var ( @@ -73,7 +72,7 @@ func setup(t *testing.T, stateStores []sm.Store, chBuf uint) *reactorTestSuite { evidenceTime := time.Date(2019, 1, 1, 0, 0, 0, 0, time.UTC) for nodeID := range rts.network.Nodes { logger := rts.logger.With("validator", idx) - evidenceDB := dbm.NewMemDB() + evidenceDB := memdb.NewDB() blockStore := &mocks.BlockStore{} state, _ := stateStores[idx].Load() blockStore.On("LoadBlockMeta", mock.AnythingOfType("int64")).Return(func(h int64) *types.BlockMeta { diff --git a/internal/evidence/verify_test.go b/internal/evidence/verify_test.go index 85f997f2a..bb34559c6 100644 --- a/internal/evidence/verify_test.go +++ b/internal/evidence/verify_test.go @@ -9,8 +9,6 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" - "github.com/tendermint/tendermint/crypto" "github.com/tendermint/tendermint/crypto/tmhash" "github.com/tendermint/tendermint/internal/evidence" @@ -21,6 +19,7 @@ import ( sm "github.com/tendermint/tendermint/state" smmocks "github.com/tendermint/tendermint/state/mocks" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) const ( @@ -91,7 +90,7 @@ func TestVerify_LunaticAttackAgainstState(t *testing.T) { blockStore.On("LoadBlockMeta", height).Return(&types.BlockMeta{Header: *trusted.Header}) blockStore.On("LoadBlockCommit", commonHeight).Return(common.Commit) blockStore.On("LoadBlockCommit", height).Return(trusted.Commit) - pool, err := evidence.NewPool(log.TestingLogger(), dbm.NewMemDB(), stateStore, blockStore) + pool, err := evidence.NewPool(log.TestingLogger(), memdb.NewDB(), stateStore, blockStore) require.NoError(t, err) evList := types.EvidenceList{ev} @@ -113,20 +112,20 @@ func TestVerify_LunaticAttackAgainstState(t *testing.T) { // duplicate evidence should be rejected evList = types.EvidenceList{ev, ev} - pool, err = evidence.NewPool(log.TestingLogger(), dbm.NewMemDB(), stateStore, blockStore) + pool, err = evidence.NewPool(log.TestingLogger(), memdb.NewDB(), stateStore, blockStore) require.NoError(t, err) assert.Error(t, pool.CheckEvidence(evList)) // If evidence is submitted with an altered timestamp it should return an error ev.Timestamp = defaultEvidenceTime.Add(1 * time.Minute) - pool, err = evidence.NewPool(log.TestingLogger(), dbm.NewMemDB(), stateStore, blockStore) + pool, err = evidence.NewPool(log.TestingLogger(), memdb.NewDB(), stateStore, blockStore) require.NoError(t, err) assert.Error(t, pool.AddEvidence(ev)) ev.Timestamp = defaultEvidenceTime // Evidence submitted with a different validator power should fail ev.TotalVotingPower = 1 - pool, err = evidence.NewPool(log.TestingLogger(), dbm.NewMemDB(), stateStore, blockStore) + pool, err = evidence.NewPool(log.TestingLogger(), memdb.NewDB(), stateStore, blockStore) require.NoError(t, err) assert.Error(t, pool.AddEvidence(ev)) ev.TotalVotingPower = common.ValidatorSet.TotalVotingPower() @@ -167,7 +166,7 @@ func TestVerify_ForwardLunaticAttack(t *testing.T) { blockStore.On("LoadBlockCommit", commonHeight).Return(common.Commit) blockStore.On("LoadBlockCommit", nodeHeight).Return(trusted.Commit) blockStore.On("Height").Return(nodeHeight) - pool, err := evidence.NewPool(log.TestingLogger(), dbm.NewMemDB(), stateStore, blockStore) + pool, err := evidence.NewPool(log.TestingLogger(), memdb.NewDB(), stateStore, blockStore) require.NoError(t, err) // check that the evidence pool correctly verifies the evidence @@ -185,7 +184,7 @@ func TestVerify_ForwardLunaticAttack(t *testing.T) { oldBlockStore.On("Height").Return(nodeHeight) require.Equal(t, defaultEvidenceTime, oldBlockStore.LoadBlockMeta(nodeHeight).Header.Time) - pool, err = evidence.NewPool(log.TestingLogger(), dbm.NewMemDB(), stateStore, oldBlockStore) + pool, err = evidence.NewPool(log.TestingLogger(), memdb.NewDB(), stateStore, oldBlockStore) require.NoError(t, err) assert.Error(t, pool.CheckEvidence(types.EvidenceList{ev})) } @@ -273,7 +272,7 @@ func TestVerifyLightClientAttack_Equivocation(t *testing.T) { blockStore.On("LoadBlockMeta", int64(10)).Return(&types.BlockMeta{Header: *trustedHeader}) blockStore.On("LoadBlockCommit", int64(10)).Return(trustedCommit) - pool, err := evidence.NewPool(log.TestingLogger(), dbm.NewMemDB(), stateStore, blockStore) + pool, err := evidence.NewPool(log.TestingLogger(), memdb.NewDB(), stateStore, blockStore) require.NoError(t, err) evList := types.EvidenceList{ev} @@ -359,7 +358,7 @@ func TestVerifyLightClientAttack_Amnesia(t *testing.T) { blockStore.On("LoadBlockMeta", int64(10)).Return(&types.BlockMeta{Header: *trustedHeader}) blockStore.On("LoadBlockCommit", int64(10)).Return(trustedCommit) - pool, err := evidence.NewPool(log.TestingLogger(), dbm.NewMemDB(), stateStore, blockStore) + pool, err := evidence.NewPool(log.TestingLogger(), memdb.NewDB(), stateStore, blockStore) require.NoError(t, err) evList := types.EvidenceList{ev} @@ -451,7 +450,7 @@ func TestVerifyDuplicateVoteEvidence(t *testing.T) { blockStore := &mocks.BlockStore{} blockStore.On("LoadBlockMeta", int64(10)).Return(&types.BlockMeta{Header: types.Header{Time: defaultEvidenceTime}}) - pool, err := evidence.NewPool(log.TestingLogger(), dbm.NewMemDB(), stateStore, blockStore) + pool, err := evidence.NewPool(log.TestingLogger(), memdb.NewDB(), stateStore, blockStore) require.NoError(t, err) evList := types.EvidenceList{goodEv} diff --git a/internal/p2p/p2ptest/network.go b/internal/p2p/p2ptest/network.go index 1daba3f14..f5c94034f 100644 --- a/internal/p2p/p2ptest/network.go +++ b/internal/p2p/p2ptest/network.go @@ -8,13 +8,13 @@ import ( "github.com/gogo/protobuf/proto" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" "github.com/tendermint/tendermint/crypto" "github.com/tendermint/tendermint/crypto/ed25519" "github.com/tendermint/tendermint/internal/p2p" "github.com/tendermint/tendermint/libs/log" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) // Network sets up an in-memory network that can be used for high-level P2P @@ -238,7 +238,7 @@ func (n *Network) MakeNode(t *testing.T, opts NodeOptions) *Node { transport := n.memoryNetwork.CreateTransport(nodeID) require.Len(t, transport.Endpoints(), 1, "transport not listening on 1 endpoint") - peerManager, err := p2p.NewPeerManager(nodeID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(nodeID, memdb.NewDB(), p2p.PeerManagerOptions{ MinRetryTime: 10 * time.Millisecond, MaxRetryTime: 100 * time.Millisecond, RetryTimeJitter: time.Millisecond, diff --git a/internal/p2p/peermanager_scoring_test.go b/internal/p2p/peermanager_scoring_test.go index 0825af948..c2a0506a7 100644 --- a/internal/p2p/peermanager_scoring_test.go +++ b/internal/p2p/peermanager_scoring_test.go @@ -8,7 +8,7 @@ import ( "github.com/stretchr/testify/require" "github.com/tendermint/tendermint/crypto/ed25519" "github.com/tendermint/tendermint/types" - dbm "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" ) func TestPeerScoring(t *testing.T) { @@ -17,7 +17,7 @@ func TestPeerScoring(t *testing.T) { selfID := types.NodeIDFromPubKey(selfKey.PubKey()) // create a mock peer manager - db := dbm.NewMemDB() + db := memdb.NewDB() peerManager, err := NewPeerManager(selfID, db, PeerManagerOptions{}) require.NoError(t, err) defer peerManager.Close() diff --git a/internal/p2p/peermanager_test.go b/internal/p2p/peermanager_test.go index 69c798d2d..d3f1d818c 100644 --- a/internal/p2p/peermanager_test.go +++ b/internal/p2p/peermanager_test.go @@ -9,10 +9,10 @@ import ( "github.com/fortytw2/leaktest" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" "github.com/tendermint/tendermint/internal/p2p" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) // FIXME: We should probably have some randomized property-based tests for the @@ -110,11 +110,11 @@ func TestPeerManagerOptions_Validate(t *testing.T) { func TestNewPeerManager(t *testing.T) { // Zero options should be valid. - _, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + _, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) // Invalid options should error. - _, err = p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + _, err = p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ PersistentPeers: []types.NodeID{"foo"}, }) require.Error(t, err) @@ -148,7 +148,7 @@ func TestNewPeerManager_Persistence(t *testing.T) { } // Create an initial peer manager and add the peers. - db := dbm.NewMemDB() + db := memdb.NewDB() peerManager, err := p2p.NewPeerManager(selfID, db, p2p.PeerManagerOptions{ PersistentPeers: []types.NodeID{aID}, PeerScores: map[types.NodeID]p2p.PeerScore{bID: 1}, @@ -197,7 +197,7 @@ func TestNewPeerManager_SelfIDChange(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} - db := dbm.NewMemDB() + db := memdb.NewDB() peerManager, err := p2p.NewPeerManager(selfID, db, p2p.PeerManagerOptions{}) require.NoError(t, err) @@ -222,7 +222,7 @@ func TestPeerManager_Add(t *testing.T) { bID := types.NodeID(strings.Repeat("b", 40)) cID := types.NodeID(strings.Repeat("c", 40)) - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ PersistentPeers: []types.NodeID{aID, cID}, MaxPeers: 2, MaxConnected: 2, @@ -275,7 +275,7 @@ func TestPeerManager_Add(t *testing.T) { func TestPeerManager_DialNext(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) // Add an address. DialNext should return it. @@ -302,7 +302,7 @@ func TestPeerManager_DialNext_Retry(t *testing.T) { MinRetryTime: 100 * time.Millisecond, MaxRetryTime: 500 * time.Millisecond, } - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), options) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), options) require.NoError(t, err) added, err := peerManager.Add(a) @@ -344,7 +344,7 @@ func TestPeerManager_DialNext_Retry(t *testing.T) { func TestPeerManager_DialNext_WakeOnAdd(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) // Spawn a goroutine to add a peer after a delay. @@ -364,7 +364,7 @@ func TestPeerManager_DialNext_WakeOnAdd(t *testing.T) { } func TestPeerManager_DialNext_WakeOnDialFailed(t *testing.T) { - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ MaxConnected: 1, }) require.NoError(t, err) @@ -404,7 +404,7 @@ func TestPeerManager_DialNext_WakeOnDialFailed(t *testing.T) { func TestPeerManager_DialNext_WakeOnDialFailedRetry(t *testing.T) { options := p2p.PeerManagerOptions{MinRetryTime: 200 * time.Millisecond} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), options) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), options) require.NoError(t, err) a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} @@ -432,7 +432,7 @@ func TestPeerManager_DialNext_WakeOnDialFailedRetry(t *testing.T) { func TestPeerManager_DialNext_WakeOnDisconnected(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) added, err := peerManager.Add(a) @@ -462,7 +462,7 @@ func TestPeerManager_TryDialNext_MaxConnected(t *testing.T) { b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} c := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("c", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ MaxConnected: 2, }) require.NoError(t, err) @@ -500,7 +500,7 @@ func TestPeerManager_TryDialNext_MaxConnectedUpgrade(t *testing.T) { d := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("d", 40))} e := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("e", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ PeerScores: map[types.NodeID]p2p.PeerScore{ a.NodeID: 0, b.NodeID: 1, @@ -582,7 +582,7 @@ func TestPeerManager_TryDialNext_UpgradeReservesPeer(t *testing.T) { b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} c := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("c", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ PeerScores: map[types.NodeID]p2p.PeerScore{b.NodeID: 1, c.NodeID: 1}, MaxConnected: 1, MaxConnectedUpgrade: 2, @@ -624,7 +624,7 @@ func TestPeerManager_TryDialNext_DialingConnected(t *testing.T) { bID := types.NodeID(strings.Repeat("b", 40)) b := p2p.NodeAddress{Protocol: "memory", NodeID: bID} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ MaxConnected: 2, }) require.NoError(t, err) @@ -671,7 +671,7 @@ func TestPeerManager_TryDialNext_Multiple(t *testing.T) { {Protocol: "tcp", NodeID: bID, Hostname: "::1"}, } - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) for _, address := range addresses { @@ -704,7 +704,7 @@ func TestPeerManager_DialFailed(t *testing.T) { bID := types.NodeID(strings.Repeat("b", 40)) b := p2p.NodeAddress{Protocol: "memory", NodeID: bID} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) added, err := peerManager.Add(a) @@ -739,7 +739,7 @@ func TestPeerManager_DialFailed_UnreservePeer(t *testing.T) { b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} c := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("c", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ PeerScores: map[types.NodeID]p2p.PeerScore{b.NodeID: 1, c.NodeID: 1}, MaxConnected: 1, MaxConnectedUpgrade: 2, @@ -784,7 +784,7 @@ func TestPeerManager_Dialed_Connected(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) // Marking a as dialed twice should error. @@ -811,7 +811,7 @@ func TestPeerManager_Dialed_Connected(t *testing.T) { } func TestPeerManager_Dialed_Self(t *testing.T) { - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) // Dialing self should error. @@ -823,7 +823,7 @@ func TestPeerManager_Dialed_MaxConnected(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ MaxConnected: 1, }) require.NoError(t, err) @@ -853,7 +853,7 @@ func TestPeerManager_Dialed_MaxConnectedUpgrade(t *testing.T) { c := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("c", 40))} d := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("d", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ MaxConnected: 2, MaxConnectedUpgrade: 1, PeerScores: map[types.NodeID]p2p.PeerScore{c.NodeID: 1, d.NodeID: 1}, @@ -891,7 +891,7 @@ func TestPeerManager_Dialed_MaxConnectedUpgrade(t *testing.T) { func TestPeerManager_Dialed_Unknown(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) // Marking an unknown node as dialed should error. @@ -903,7 +903,7 @@ func TestPeerManager_Dialed_Upgrade(t *testing.T) { b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} c := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("c", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ MaxConnected: 1, MaxConnectedUpgrade: 2, PeerScores: map[types.NodeID]p2p.PeerScore{b.NodeID: 1, c.NodeID: 1}, @@ -946,7 +946,7 @@ func TestPeerManager_Dialed_UpgradeEvenLower(t *testing.T) { c := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("c", 40))} d := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("d", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ MaxConnected: 2, MaxConnectedUpgrade: 1, PeerScores: map[types.NodeID]p2p.PeerScore{ @@ -999,7 +999,7 @@ func TestPeerManager_Dialed_UpgradeNoEvict(t *testing.T) { b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} c := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("c", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ MaxConnected: 2, MaxConnectedUpgrade: 1, PeerScores: map[types.NodeID]p2p.PeerScore{ @@ -1047,7 +1047,7 @@ func TestPeerManager_Accepted(t *testing.T) { c := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("c", 40))} d := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("d", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) // Accepting a connection from self should error. @@ -1093,7 +1093,7 @@ func TestPeerManager_Accepted_MaxConnected(t *testing.T) { b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} c := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("c", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ MaxConnected: 2, }) require.NoError(t, err) @@ -1122,7 +1122,7 @@ func TestPeerManager_Accepted_MaxConnectedUpgrade(t *testing.T) { c := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("c", 40))} d := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("d", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ PeerScores: map[types.NodeID]p2p.PeerScore{ c.NodeID: 1, d.NodeID: 2, @@ -1167,7 +1167,7 @@ func TestPeerManager_Accepted_Upgrade(t *testing.T) { b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} c := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("c", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ PeerScores: map[types.NodeID]p2p.PeerScore{ b.NodeID: 1, c.NodeID: 1, @@ -1210,7 +1210,7 @@ func TestPeerManager_Accepted_UpgradeDialing(t *testing.T) { b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} c := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("c", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ PeerScores: map[types.NodeID]p2p.PeerScore{ b.NodeID: 1, c.NodeID: 1, @@ -1256,7 +1256,7 @@ func TestPeerManager_Ready(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) sub := peerManager.Subscribe() @@ -1291,7 +1291,7 @@ func TestPeerManager_Ready(t *testing.T) { func TestPeerManager_EvictNext(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) added, err := peerManager.Add(a) @@ -1324,7 +1324,7 @@ func TestPeerManager_EvictNext(t *testing.T) { func TestPeerManager_EvictNext_WakeOnError(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) added, err := peerManager.Add(a) @@ -1351,7 +1351,7 @@ func TestPeerManager_EvictNext_WakeOnUpgradeDialed(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ MaxConnected: 1, MaxConnectedUpgrade: 1, PeerScores: map[types.NodeID]p2p.PeerScore{b.NodeID: 1}, @@ -1389,7 +1389,7 @@ func TestPeerManager_EvictNext_WakeOnUpgradeAccepted(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ MaxConnected: 1, MaxConnectedUpgrade: 1, PeerScores: map[types.NodeID]p2p.PeerScore{b.NodeID: 1}, @@ -1419,7 +1419,7 @@ func TestPeerManager_EvictNext_WakeOnUpgradeAccepted(t *testing.T) { func TestPeerManager_TryEvictNext(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) added, err := peerManager.Add(a) @@ -1455,7 +1455,7 @@ func TestPeerManager_TryEvictNext(t *testing.T) { func TestPeerManager_Disconnected(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) sub := peerManager.Subscribe() @@ -1509,7 +1509,7 @@ func TestPeerManager_Disconnected(t *testing.T) { func TestPeerManager_Errored(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) // Erroring an unknown peer does nothing. @@ -1545,7 +1545,7 @@ func TestPeerManager_Errored(t *testing.T) { func TestPeerManager_Subscribe(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) // This tests all subscription events for full peer lifecycles. @@ -1606,7 +1606,7 @@ func TestPeerManager_Subscribe(t *testing.T) { func TestPeerManager_Subscribe_Close(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) sub := peerManager.Subscribe() @@ -1633,7 +1633,7 @@ func TestPeerManager_Subscribe_Broadcast(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) s1 := peerManager.Subscribe() @@ -1677,7 +1677,7 @@ func TestPeerManager_Close(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ MinRetryTime: 10 * time.Second, }) require.NoError(t, err) @@ -1716,7 +1716,7 @@ func TestPeerManager_Advertise(t *testing.T) { dID := types.NodeID(strings.Repeat("d", 40)) // Create an initial peer manager and add the peers. - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{ + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{ PeerScores: map[types.NodeID]p2p.PeerScore{aID: 3, bID: 2, cID: 1}, }) require.NoError(t, err) @@ -1764,7 +1764,7 @@ func TestPeerManager_SetHeight_GetHeight(t *testing.T) { a := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("a", 40))} b := p2p.NodeAddress{Protocol: "memory", NodeID: types.NodeID(strings.Repeat("b", 40))} - db := dbm.NewMemDB() + db := memdb.NewDB() peerManager, err := p2p.NewPeerManager(selfID, db, p2p.PeerManagerOptions{}) require.NoError(t, err) diff --git a/internal/p2p/pex/reactor_test.go b/internal/p2p/pex/reactor_test.go index a5acb0d5e..84c9ac041 100644 --- a/internal/p2p/pex/reactor_test.go +++ b/internal/p2p/pex/reactor_test.go @@ -7,7 +7,6 @@ import ( "time" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" "github.com/tendermint/tendermint/crypto/ed25519" "github.com/tendermint/tendermint/internal/p2p" @@ -16,6 +15,7 @@ import ( "github.com/tendermint/tendermint/libs/log" proto "github.com/tendermint/tendermint/proto/tendermint/p2p" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) const ( @@ -298,7 +298,7 @@ func setupSingle(t *testing.T) *singleTestReactor { peerCh := make(chan p2p.PeerUpdate, chBuf) peerUpdates := p2p.NewPeerUpdates(peerCh, chBuf) - peerManager, err := p2p.NewPeerManager(nodeID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(nodeID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) reactor := pex.NewReactorV2(log.TestingLogger(), peerManager, pexCh, peerUpdates) diff --git a/internal/p2p/router_test.go b/internal/p2p/router_test.go index 436e3f004..da632f362 100644 --- a/internal/p2p/router_test.go +++ b/internal/p2p/router_test.go @@ -16,7 +16,6 @@ import ( gogotypes "github.com/gogo/protobuf/types" "github.com/stretchr/testify/mock" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" "github.com/tendermint/tendermint/crypto" tmsync "github.com/tendermint/tendermint/internal/libs/sync" @@ -25,6 +24,7 @@ import ( "github.com/tendermint/tendermint/internal/p2p/p2ptest" "github.com/tendermint/tendermint/libs/log" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) func echoReactor(channel *p2p.Channel) { @@ -98,7 +98,7 @@ func TestRouter_Channel_Basic(t *testing.T) { t.Cleanup(leaktest.Check(t)) // Set up a router with no transports (so no peers). - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) defer peerManager.Close() @@ -370,7 +370,7 @@ func TestRouter_AcceptPeers(t *testing.T) { mockTransport.On("Accept").Once().Return(nil, io.EOF) // Set up and start the router. - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) defer peerManager.Close() @@ -425,7 +425,7 @@ func TestRouter_AcceptPeers_Error(t *testing.T) { mockTransport.On("Close").Return(nil) // Set up and start the router. - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) defer peerManager.Close() @@ -459,7 +459,7 @@ func TestRouter_AcceptPeers_ErrorEOF(t *testing.T) { mockTransport.On("Close").Return(nil) // Set up and start the router. - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) defer peerManager.Close() @@ -507,7 +507,7 @@ func TestRouter_AcceptPeers_HeadOfLineBlocking(t *testing.T) { mockTransport.On("Accept").Once().Return(nil, io.EOF) // Set up and start the router. - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) defer peerManager.Close() @@ -600,7 +600,7 @@ func TestRouter_DialPeers(t *testing.T) { } // Set up and start the router. - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) defer peerManager.Close() @@ -677,7 +677,7 @@ func TestRouter_DialPeers_Parallel(t *testing.T) { } // Set up and start the router. - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) defer peerManager.Close() @@ -758,7 +758,7 @@ func TestRouter_EvictPeers(t *testing.T) { mockTransport.On("Accept").Once().Return(nil, io.EOF) // Set up and start the router. - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) defer peerManager.Close() @@ -822,7 +822,7 @@ func TestRouter_ChannelCompatability(t *testing.T) { mockTransport.On("Accept").Once().Return(nil, io.EOF) // Set up and start the router. - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) defer peerManager.Close() @@ -872,7 +872,7 @@ func TestRouter_DontSendOnInvalidChannel(t *testing.T) { mockTransport.On("Accept").Once().Return(nil, io.EOF) // Set up and start the router. - peerManager, err := p2p.NewPeerManager(selfID, dbm.NewMemDB(), p2p.PeerManagerOptions{}) + peerManager, err := p2p.NewPeerManager(selfID, memdb.NewDB(), p2p.PeerManagerOptions{}) require.NoError(t, err) defer peerManager.Close() diff --git a/internal/statesync/reactor_test.go b/internal/statesync/reactor_test.go index 9bff72679..32220bcb1 100644 --- a/internal/statesync/reactor_test.go +++ b/internal/statesync/reactor_test.go @@ -10,7 +10,6 @@ import ( "github.com/fortytw2/leaktest" "github.com/stretchr/testify/mock" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" abci "github.com/tendermint/tendermint/abci/types" "github.com/tendermint/tendermint/config" @@ -25,6 +24,7 @@ import ( smmocks "github.com/tendermint/tendermint/state/mocks" "github.com/tendermint/tendermint/store" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) type reactorTestSuite struct { @@ -119,7 +119,7 @@ func setup( ) rts.stateStore = &smmocks.Store{} - rts.blockStore = store.NewBlockStore(dbm.NewMemDB()) + rts.blockStore = store.NewBlockStore(memdb.NewDB()) cfg := config.DefaultStateSyncConfig() diff --git a/internal/statesync/stateprovider.go b/internal/statesync/stateprovider.go index fd889dc51..9ea4b4422 100644 --- a/internal/statesync/stateprovider.go +++ b/internal/statesync/stateprovider.go @@ -6,8 +6,6 @@ import ( "strings" "time" - dbm "github.com/tendermint/tm-db" - tmsync "github.com/tendermint/tendermint/internal/libs/sync" "github.com/tendermint/tendermint/libs/log" "github.com/tendermint/tendermint/light" @@ -18,6 +16,7 @@ import ( rpchttp "github.com/tendermint/tendermint/rpc/client/http" sm "github.com/tendermint/tendermint/state" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) //go:generate ../../scripts/mockery_generate.sh StateProvider @@ -71,7 +70,7 @@ func NewLightClientStateProvider( } lc, err := light.NewClient(ctx, chainID, trustOptions, providers[0], providers[1:], - lightdb.New(dbm.NewMemDB()), light.Logger(logger)) + lightdb.New(memdb.NewDB()), light.Logger(logger)) if err != nil { return nil, err } @@ -105,7 +104,7 @@ func NewLightClientStateProviderFromDispatcher( } lc, err := light.NewClient(ctx, chainID, trustOptions, providers[0], providers[1:], - lightdb.New(dbm.NewMemDB()), light.Logger(logger)) + lightdb.New(memdb.NewDB()), light.Logger(logger)) if err != nil { return nil, err } diff --git a/light/client_benchmark_test.go b/light/client_benchmark_test.go index 04ea6d1fc..9f7eeebed 100644 --- a/light/client_benchmark_test.go +++ b/light/client_benchmark_test.go @@ -5,13 +5,12 @@ import ( "testing" "time" - dbm "github.com/tendermint/tm-db" - "github.com/tendermint/tendermint/libs/log" "github.com/tendermint/tendermint/light" "github.com/tendermint/tendermint/light/provider" dbs "github.com/tendermint/tendermint/light/store/db" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) // NOTE: block is produced every minute. Make sure the verification time @@ -75,7 +74,7 @@ func BenchmarkSequence(b *testing.B) { }, benchmarkFullNode, []provider.Provider{benchmarkFullNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), light.SequentialVerification(), ) @@ -107,7 +106,7 @@ func BenchmarkBisection(b *testing.B) { }, benchmarkFullNode, []provider.Provider{benchmarkFullNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) if err != nil { @@ -138,7 +137,7 @@ func BenchmarkBackwards(b *testing.B) { }, benchmarkFullNode, []provider.Provider{benchmarkFullNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) if err != nil { diff --git a/light/client_test.go b/light/client_test.go index e8a478a53..3d85bec70 100644 --- a/light/client_test.go +++ b/light/client_test.go @@ -12,8 +12,6 @@ import ( "github.com/stretchr/testify/mock" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" - "github.com/tendermint/tendermint/internal/test/factory" "github.com/tendermint/tendermint/libs/log" "github.com/tendermint/tendermint/light" @@ -21,6 +19,7 @@ import ( provider_mocks "github.com/tendermint/tendermint/light/provider/mocks" dbs "github.com/tendermint/tendermint/light/store/db" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) const ( @@ -218,7 +217,7 @@ func TestClient_SequentialVerification(t *testing.T) { trustOptions, mockNode, []provider.Provider{mockNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.SequentialVerification(), light.Logger(log.TestingLogger()), ) @@ -338,7 +337,7 @@ func TestClient_SkippingVerification(t *testing.T) { trustOptions, mockNode, []provider.Provider{mockNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.SkippingVerification(light.DefaultTrustLevel), light.Logger(log.TestingLogger()), ) @@ -391,7 +390,7 @@ func TestClientLargeBisectionVerification(t *testing.T) { }, mockNode, []provider.Provider{mockNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.SkippingVerification(light.DefaultTrustLevel), ) require.NoError(t, err) @@ -418,7 +417,7 @@ func TestClientBisectionBetweenTrustedHeaders(t *testing.T) { }, mockFullNode, []provider.Provider{mockFullNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.SkippingVerification(light.DefaultTrustLevel), ) require.NoError(t, err) @@ -445,7 +444,7 @@ func TestClient_Cleanup(t *testing.T) { trustOptions, mockFullNode, []provider.Provider{mockFullNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) require.NoError(t, err) @@ -467,7 +466,7 @@ func TestClientRestoresTrustedHeaderAfterStartup(t *testing.T) { // 1. options.Hash == trustedHeader.Hash t.Run("hashes should match", func(t *testing.T) { mockNode := &provider_mocks.Provider{} - trustedStore := dbs.New(dbm.NewMemDB()) + trustedStore := dbs.New(memdb.NewDB()) err := trustedStore.SaveLightBlock(l1) require.NoError(t, err) @@ -492,7 +491,7 @@ func TestClientRestoresTrustedHeaderAfterStartup(t *testing.T) { // 2. options.Hash != trustedHeader.Hash t.Run("hashes should not match", func(t *testing.T) { - trustedStore := dbs.New(dbm.NewMemDB()) + trustedStore := dbs.New(memdb.NewDB()) err := trustedStore.SaveLightBlock(l1) require.NoError(t, err) @@ -538,7 +537,7 @@ func TestClient_Update(t *testing.T) { trustOptions, mockFullNode, []provider.Provider{mockFullNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) require.NoError(t, err) @@ -563,7 +562,7 @@ func TestClient_Concurrency(t *testing.T) { trustOptions, mockFullNode, []provider.Provider{mockFullNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) require.NoError(t, err) @@ -609,7 +608,7 @@ func TestClient_AddProviders(t *testing.T) { trustOptions, mockFullNode, []provider.Provider{mockFullNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) require.NoError(t, err) @@ -645,7 +644,7 @@ func TestClientReplacesPrimaryWithWitnessIfPrimaryIsUnavailable(t *testing.T) { trustOptions, mockDeadNode, []provider.Provider{mockFullNode, mockFullNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) @@ -683,7 +682,7 @@ func TestClient_BackwardsVerification(t *testing.T) { }, mockLargeFullNode, []provider.Provider{mockLargeFullNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) require.NoError(t, err) @@ -760,7 +759,7 @@ func TestClient_BackwardsVerification(t *testing.T) { }, mockNode, []provider.Provider{mockNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) require.NoError(t, err, idx) @@ -774,7 +773,7 @@ func TestClient_BackwardsVerification(t *testing.T) { func TestClient_NewClientFromTrustedStore(t *testing.T) { // 1) Initiate DB and fill with a "trusted" header - db := dbs.New(dbm.NewMemDB()) + db := dbs.New(memdb.NewDB()) err := db.SaveLightBlock(l1) require.NoError(t, err) mockNode := &provider_mocks.Provider{} @@ -833,7 +832,7 @@ func TestClientRemovesWitnessIfItSendsUsIncorrectHeader(t *testing.T) { trustOptions, mockFullNode, []provider.Provider{mockBadNode1, mockBadNode2}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) // witness should have behaved properly -> no error @@ -889,7 +888,7 @@ func TestClient_TrustedValidatorSet(t *testing.T) { trustOptions, mockFullNode, []provider.Provider{mockBadValSetNode, mockFullNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) require.NoError(t, err) @@ -921,7 +920,7 @@ func TestClientPrunesHeadersAndValidatorSets(t *testing.T) { trustOptions, mockFullNode, []provider.Provider{mockFullNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), light.PruningSize(1), ) @@ -1011,7 +1010,7 @@ func TestClientEnsureValidHeadersAndValSets(t *testing.T) { trustOptions, mockBadNode, []provider.Provider{mockBadNode, mockBadNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), ) require.NoError(t, err) @@ -1049,7 +1048,7 @@ func TestClientHandlesContexts(t *testing.T) { trustOptions, mockNode, []provider.Provider{mockNode, mockNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), ) require.Error(t, ctxTimeOut.Err()) require.Error(t, err) @@ -1062,7 +1061,7 @@ func TestClientHandlesContexts(t *testing.T) { trustOptions, mockNode, []provider.Provider{mockNode, mockNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), ) require.NoError(t, err) diff --git a/light/detector_test.go b/light/detector_test.go index 0bf96ace6..6ccae84f3 100644 --- a/light/detector_test.go +++ b/light/detector_test.go @@ -9,14 +9,13 @@ import ( "github.com/stretchr/testify/mock" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" - "github.com/tendermint/tendermint/libs/log" "github.com/tendermint/tendermint/light" "github.com/tendermint/tendermint/light/provider" provider_mocks "github.com/tendermint/tendermint/light/provider/mocks" dbs "github.com/tendermint/tendermint/light/store/db" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) func TestLightClientAttackEvidence_Lunatic(t *testing.T) { @@ -87,7 +86,7 @@ func TestLightClientAttackEvidence_Lunatic(t *testing.T) { }, mockPrimary, []provider.Provider{mockWitness}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) require.NoError(t, err) @@ -198,7 +197,7 @@ func TestLightClientAttackEvidence_Equivocation(t *testing.T) { }, mockPrimary, []provider.Provider{mockWitness}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), testCase.lightOption, ) @@ -297,7 +296,7 @@ func TestLightClientAttackEvidence_ForwardLunatic(t *testing.T) { }, mockPrimary, []provider.Provider{mockWitness, accomplice}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), light.MaxClockDrift(1*time.Second), light.MaxBlockLag(1*time.Second), @@ -357,7 +356,7 @@ func TestLightClientAttackEvidence_ForwardLunatic(t *testing.T) { }, mockPrimary, []provider.Provider{mockLaggingWitness, accomplice}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), light.MaxClockDrift(1*time.Second), light.MaxBlockLag(1*time.Second), @@ -391,7 +390,7 @@ func TestClientDivergentTraces1(t *testing.T) { }, mockPrimary, []provider.Provider{mockWitness}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) require.Error(t, err) @@ -419,7 +418,7 @@ func TestClientDivergentTraces2(t *testing.T) { }, mockPrimaryNode, []provider.Provider{mockDeadNode, mockDeadNode, mockPrimaryNode}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) require.NoError(t, err) @@ -457,7 +456,7 @@ func TestClientDivergentTraces3(t *testing.T) { }, mockPrimary, []provider.Provider{mockWitness}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) require.NoError(t, err) @@ -495,7 +494,7 @@ func TestClientDivergentTraces4(t *testing.T) { }, mockPrimary, []provider.Provider{mockWitness}, - dbs.New(dbm.NewMemDB()), + dbs.New(memdb.NewDB()), light.Logger(log.TestingLogger()), ) require.NoError(t, err) diff --git a/light/doc.go b/light/doc.go index 700bbeb6c..3d06ef3eb 100644 --- a/light/doc.go +++ b/light/doc.go @@ -63,7 +63,7 @@ This package provides three major things: Example usage: - db, err := dbm.NewGoLevelDB("light-client-db", dbDir) + db, err := goleveldb.NewDB("light-client-db", dbDir) if err != nil { // handle error } diff --git a/light/example_test.go b/light/example_test.go index 2e0feb5e1..fb805f699 100644 --- a/light/example_test.go +++ b/light/example_test.go @@ -7,8 +7,6 @@ import ( "os" "time" - dbm "github.com/tendermint/tm-db" - "github.com/tendermint/tendermint/abci/example/kvstore" "github.com/tendermint/tendermint/libs/log" "github.com/tendermint/tendermint/light" @@ -16,6 +14,7 @@ import ( httpp "github.com/tendermint/tendermint/light/provider/http" dbs "github.com/tendermint/tendermint/light/store/db" rpctest "github.com/tendermint/tendermint/rpc/test" + "github.com/tendermint/tm-db/goleveldb" ) // Manually getting light blocks and verifying them. @@ -55,7 +54,7 @@ func ExampleClient() { stdlog.Fatal(err) } - db, err := dbm.NewGoLevelDB("light-client-db", dbDir) + db, err := goleveldb.NewDB("light-client-db", dbDir) if err != nil { stdlog.Fatal(err) } diff --git a/light/light_test.go b/light/light_test.go index f5d2ddd89..e20709248 100644 --- a/light/light_test.go +++ b/light/light_test.go @@ -8,7 +8,6 @@ import ( "time" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" "github.com/tendermint/tendermint/abci/example/kvstore" "github.com/tendermint/tendermint/libs/log" @@ -18,6 +17,7 @@ import ( dbs "github.com/tendermint/tendermint/light/store/db" rpctest "github.com/tendermint/tendermint/rpc/test" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/goleveldb" ) // NOTE: these are ports of the tests from example_test.go but @@ -53,7 +53,7 @@ func TestClientIntegration_Update(t *testing.T) { block, err := waitForBlock(ctx, primary, 2) require.NoError(t, err) - db, err := dbm.NewGoLevelDB("light-client-db", dbDir) + db, err := goleveldb.NewDB("light-client-db", dbDir) require.NoError(t, err) c, err := light.NewClient( @@ -111,7 +111,7 @@ func TestClientIntegration_VerifyLightBlockAtHeight(t *testing.T) { block, err := waitForBlock(ctx, primary, 2) require.NoError(t, err) - db, err := dbm.NewGoLevelDB("light-client-db", dbDir) + db, err := goleveldb.NewDB("light-client-db", dbDir) require.NoError(t, err) c, err := light.NewClient(ctx, diff --git a/light/store/db/db_test.go b/light/store/db/db_test.go index b373d5126..8083798b0 100644 --- a/light/store/db/db_test.go +++ b/light/store/db/db_test.go @@ -8,18 +8,17 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" - "github.com/tendermint/tendermint/crypto" "github.com/tendermint/tendermint/crypto/tmhash" "github.com/tendermint/tendermint/internal/test/factory" tmrand "github.com/tendermint/tendermint/libs/rand" "github.com/tendermint/tendermint/types" "github.com/tendermint/tendermint/version" + "github.com/tendermint/tm-db/memdb" ) func TestLast_FirstLightBlockHeight(t *testing.T) { - dbStore := New(dbm.NewMemDB()) + dbStore := New(memdb.NewDB()) // Empty store height, err := dbStore.LastLightBlockHeight() @@ -44,7 +43,7 @@ func TestLast_FirstLightBlockHeight(t *testing.T) { } func Test_SaveLightBlock(t *testing.T) { - dbStore := New(dbm.NewMemDB()) + dbStore := New(memdb.NewDB()) // Empty store h, err := dbStore.LightBlock(1) @@ -74,7 +73,7 @@ func Test_SaveLightBlock(t *testing.T) { } func Test_LightBlockBefore(t *testing.T) { - dbStore := New(dbm.NewMemDB()) + dbStore := New(memdb.NewDB()) assert.Panics(t, func() { _, _ = dbStore.LightBlockBefore(0) @@ -95,7 +94,7 @@ func Test_LightBlockBefore(t *testing.T) { } func Test_Prune(t *testing.T) { - dbStore := New(dbm.NewMemDB()) + dbStore := New(memdb.NewDB()) // Empty store assert.EqualValues(t, 0, dbStore.Size()) @@ -132,7 +131,7 @@ func Test_Prune(t *testing.T) { } func Test_Concurrency(t *testing.T) { - dbStore := New(dbm.NewMemDB()) + dbStore := New(memdb.NewDB()) var wg sync.WaitGroup for i := 1; i <= 100; i++ { diff --git a/node/node_test.go b/node/node_test.go index 16edb4210..5f052a780 100644 --- a/node/node_test.go +++ b/node/node_test.go @@ -15,6 +15,7 @@ import ( "github.com/stretchr/testify/require" dbm "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" "github.com/tendermint/tendermint/abci/example/kvstore" cfg "github.com/tendermint/tendermint/config" @@ -248,8 +249,8 @@ func TestCreateProposalBlock(t *testing.T) { mp.SetLogger(logger) // Make EvidencePool - evidenceDB := dbm.NewMemDB() - blockStore := store.NewBlockStore(dbm.NewMemDB()) + evidenceDB := memdb.NewDB() + blockStore := store.NewBlockStore(memdb.NewDB()) evidencePool, err := evidence.NewPool(logger, evidenceDB, stateStore, blockStore) require.NoError(t, err) @@ -322,7 +323,7 @@ func TestMaxTxsProposalBlockSize(t *testing.T) { const height int64 = 1 state, stateDB, _ := state(1, height) stateStore := sm.NewStore(stateDB) - blockStore := store.NewBlockStore(dbm.NewMemDB()) + blockStore := store.NewBlockStore(memdb.NewDB()) const maxBytes int64 = 16384 const partSize uint32 = 256 state.ConsensusParams.Block.MaxBytes = maxBytes @@ -383,7 +384,7 @@ func TestMaxProposalBlockSize(t *testing.T) { state, stateDB, _ := state(types.MaxVotesCount, int64(1)) stateStore := sm.NewStore(stateDB) - blockStore := store.NewBlockStore(dbm.NewMemDB()) + blockStore := store.NewBlockStore(memdb.NewDB()) const maxBytes int64 = 1024 * 1024 * 2 state.ConsensusParams.Block.MaxBytes = maxBytes proposerAddr, _ := state.Validators.GetByIndex(0) @@ -614,7 +615,7 @@ func state(nVals int, height int64) (sm.State, dbm.DB, []types.PrivValidator) { }) // save validators to db for 2 heights - stateDB := dbm.NewMemDB() + stateDB := memdb.NewDB() stateStore := sm.NewStore(stateDB) if err := stateStore.Save(s); err != nil { panic(err) @@ -637,7 +638,7 @@ func TestLoadStateFromGenesis(t *testing.T) { func loadStatefromGenesis(t *testing.T) sm.State { t.Helper() - stateDB := dbm.NewMemDB() + stateDB := memdb.NewDB() stateStore := sm.NewStore(stateDB) config := cfg.ResetTestRoot("load_state_from_genesis") diff --git a/rpc/core/blocks_test.go b/rpc/core/blocks_test.go index 29db2f094..3f2583a73 100644 --- a/rpc/core/blocks_test.go +++ b/rpc/core/blocks_test.go @@ -7,14 +7,13 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" - abci "github.com/tendermint/tendermint/abci/types" tmstate "github.com/tendermint/tendermint/proto/tendermint/state" ctypes "github.com/tendermint/tendermint/rpc/core/types" rpctypes "github.com/tendermint/tendermint/rpc/jsonrpc/types" sm "github.com/tendermint/tendermint/state" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) func TestBlockchainInfo(t *testing.T) { @@ -81,7 +80,7 @@ func TestBlockResults(t *testing.T) { } env := &Environment{} - env.StateStore = sm.NewStore(dbm.NewMemDB()) + env.StateStore = sm.NewStore(memdb.NewDB()) err := env.StateStore.SaveABCIResponses(100, results) require.NoError(t, err) env.BlockStore = mockBlockStore{height: 100} diff --git a/scripts/keymigrate/migrate_test.go b/scripts/keymigrate/migrate_test.go index 21e9592fb..60bb165af 100644 --- a/scripts/keymigrate/migrate_test.go +++ b/scripts/keymigrate/migrate_test.go @@ -11,6 +11,7 @@ import ( "github.com/google/orderedcode" "github.com/stretchr/testify/require" dbm "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" ) func makeKey(t *testing.T, elems ...interface{}) []byte { @@ -71,7 +72,7 @@ func getNewPrefixKeys(t *testing.T, val int) map[string][]byte { } func getLegacyDatabase(t *testing.T) (int, dbm.DB) { - db := dbm.NewMemDB() + db := memdb.NewDB() batch := db.NewBatch() ct := 0 @@ -166,11 +167,11 @@ func TestMigration(t *testing.T) { }) t.Run("Replacement", func(t *testing.T) { t.Run("MissingKey", func(t *testing.T) { - db := dbm.NewMemDB() + db := memdb.NewDB() require.NoError(t, replaceKey(db, keyID("hi"), nil)) }) t.Run("ReplacementFails", func(t *testing.T) { - db := dbm.NewMemDB() + db := memdb.NewDB() key := keyID("hi") require.NoError(t, db.Set(key, []byte("world"))) require.Error(t, replaceKey(db, key, func(k keyID) (keyID, error) { @@ -178,7 +179,7 @@ func TestMigration(t *testing.T) { })) }) t.Run("KeyDisapears", func(t *testing.T) { - db := dbm.NewMemDB() + db := memdb.NewDB() key := keyID("hi") require.NoError(t, db.Set(key, []byte("world"))) require.Error(t, replaceKey(db, key, func(k keyID) (keyID, error) { diff --git a/state/execution_test.go b/state/execution_test.go index 8e0ec563a..ad17ecb4f 100644 --- a/state/execution_test.go +++ b/state/execution_test.go @@ -24,7 +24,7 @@ import ( "github.com/tendermint/tendermint/store" "github.com/tendermint/tendermint/types" "github.com/tendermint/tendermint/version" - dbm "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" ) var ( @@ -42,7 +42,7 @@ func TestApplyBlock(t *testing.T) { state, stateDB, _ := makeState(1, 1) stateStore := sm.NewStore(stateDB) - blockStore := store.NewBlockStore(dbm.NewMemDB()) + blockStore := store.NewBlockStore(memdb.NewDB()) blockExec := sm.NewBlockExecutor(stateStore, log.TestingLogger(), proxyApp.Consensus(), mmock.Mempool{}, sm.EmptyEvidencePool{}, blockStore) @@ -197,7 +197,7 @@ func TestBeginBlockByzantineValidators(t *testing.T) { evpool.On("Update", mock.AnythingOfType("state.State"), mock.AnythingOfType("types.EvidenceList")).Return() evpool.On("CheckEvidence", mock.AnythingOfType("types.EvidenceList")).Return(nil) - blockStore := store.NewBlockStore(dbm.NewMemDB()) + blockStore := store.NewBlockStore(memdb.NewDB()) blockExec := sm.NewBlockExecutor(stateStore, log.TestingLogger(), proxyApp.Consensus(), mmock.Mempool{}, evpool, blockStore) @@ -355,7 +355,7 @@ func TestEndBlockValidatorUpdates(t *testing.T) { state, stateDB, _ := makeState(1, 1) stateStore := sm.NewStore(stateDB) - blockStore := store.NewBlockStore(dbm.NewMemDB()) + blockStore := store.NewBlockStore(memdb.NewDB()) blockExec := sm.NewBlockExecutor( stateStore, @@ -428,7 +428,7 @@ func TestEndBlockValidatorUpdatesResultingInEmptySet(t *testing.T) { state, stateDB, _ := makeState(1, 1) stateStore := sm.NewStore(stateDB) - blockStore := store.NewBlockStore(dbm.NewMemDB()) + blockStore := store.NewBlockStore(memdb.NewDB()) blockExec := sm.NewBlockExecutor( stateStore, log.TestingLogger(), diff --git a/state/helpers_test.go b/state/helpers_test.go index 6d575e147..da2955ede 100644 --- a/state/helpers_test.go +++ b/state/helpers_test.go @@ -6,6 +6,7 @@ import ( "time" dbm "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" abci "github.com/tendermint/tendermint/abci/types" "github.com/tendermint/tendermint/crypto" @@ -109,7 +110,7 @@ func makeState(nVals, height int) (sm.State, dbm.DB, map[string]types.PrivValida AppHash: nil, }) - stateDB := dbm.NewMemDB() + stateDB := memdb.NewDB() stateStore := sm.NewStore(stateDB) if err := stateStore.Save(s); err != nil { panic(err) diff --git a/state/indexer/block/kv/kv_test.go b/state/indexer/block/kv/kv_test.go index 2a342f870..0c2f17153 100644 --- a/state/indexer/block/kv/kv_test.go +++ b/state/indexer/block/kv/kv_test.go @@ -11,10 +11,11 @@ import ( blockidxkv "github.com/tendermint/tendermint/state/indexer/block/kv" "github.com/tendermint/tendermint/types" db "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" ) func TestBlockIndexer(t *testing.T) { - store := db.NewPrefixDB(db.NewMemDB(), []byte("block_events")) + store := db.NewPrefixDB(memdb.NewDB(), []byte("block_events")) indexer := blockidxkv.New(store) require.NoError(t, indexer.Index(types.EventDataNewBlockHeader{ diff --git a/state/indexer/indexer_service_test.go b/state/indexer/indexer_service_test.go index 68a00afb5..1e3b2b542 100644 --- a/state/indexer/indexer_service_test.go +++ b/state/indexer/indexer_service_test.go @@ -21,7 +21,7 @@ import ( kv "github.com/tendermint/tendermint/state/indexer/sink/kv" psql "github.com/tendermint/tendermint/state/indexer/sink/psql" "github.com/tendermint/tendermint/types" - db "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" ) var psqldb *sql.DB @@ -55,7 +55,7 @@ func TestIndexerServiceIndexesBlocks(t *testing.T) { pool, err := setupDB(t) assert.Nil(t, err) - store := db.NewMemDB() + store := memdb.NewDB() eventSinks := []indexer.EventSink{kv.NewEventSink(store), pSink} assert.True(t, indexer.KVSinkEnabled(eventSinks)) assert.True(t, indexer.IndexingEnabled(eventSinks)) diff --git a/state/indexer/sink/kv/kv_test.go b/state/indexer/sink/kv/kv_test.go index a5d2dd81e..4773bc767 100644 --- a/state/indexer/sink/kv/kv_test.go +++ b/state/indexer/sink/kv/kv_test.go @@ -8,26 +8,28 @@ import ( "github.com/gogo/protobuf/proto" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" + abci "github.com/tendermint/tendermint/abci/types" "github.com/tendermint/tendermint/libs/pubsub/query" "github.com/tendermint/tendermint/state/indexer" kvtx "github.com/tendermint/tendermint/state/indexer/tx/kv" "github.com/tendermint/tendermint/types" db "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" ) func TestType(t *testing.T) { - kvSink := NewEventSink(db.NewMemDB()) + kvSink := NewEventSink(memdb.NewDB()) assert.Equal(t, indexer.KV, kvSink.Type()) } func TestStop(t *testing.T) { - kvSink := NewEventSink(db.NewMemDB()) + kvSink := NewEventSink(memdb.NewDB()) assert.Nil(t, kvSink.Stop()) } func TestBlockFuncs(t *testing.T) { - store := db.NewPrefixDB(db.NewMemDB(), []byte("block_events")) + store := db.NewPrefixDB(memdb.NewDB(), []byte("block_events")) indexer := NewEventSink(store) require.NoError(t, indexer.IndexBlockEvents(types.EventDataNewBlockHeader{ @@ -158,7 +160,7 @@ func TestBlockFuncs(t *testing.T) { } func TestTxSearchWithCancelation(t *testing.T) { - indexer := NewEventSink(db.NewMemDB()) + indexer := NewEventSink(memdb.NewDB()) txResult := txResultWithEvents([]abci.Event{ {Type: "account", Attributes: []abci.EventAttribute{{Key: "number", Value: "1", Index: true}}}, @@ -180,7 +182,7 @@ func TestTxSearchWithCancelation(t *testing.T) { } func TestTxSearchDeprecatedIndexing(t *testing.T) { - esdb := db.NewMemDB() + esdb := memdb.NewDB() indexer := NewEventSink(esdb) // index tx using events indexing (composite key) @@ -260,7 +262,7 @@ func TestTxSearchDeprecatedIndexing(t *testing.T) { } func TestTxSearchOneTxWithMultipleSameTagsButDifferentValues(t *testing.T) { - indexer := NewEventSink(db.NewMemDB()) + indexer := NewEventSink(memdb.NewDB()) txResult := txResultWithEvents([]abci.Event{ {Type: "account", Attributes: []abci.EventAttribute{{Key: "number", Value: "1", Index: true}}}, @@ -282,7 +284,7 @@ func TestTxSearchOneTxWithMultipleSameTagsButDifferentValues(t *testing.T) { } func TestTxSearchMultipleTxs(t *testing.T) { - indexer := NewEventSink(db.NewMemDB()) + indexer := NewEventSink(memdb.NewDB()) // indexed first, but bigger height (to test the order of transactions) txResult := txResultWithEvents([]abci.Event{ diff --git a/state/indexer/tx/kv/kv_bench_test.go b/state/indexer/tx/kv/kv_bench_test.go index 3f4e63ee1..d93b8c19d 100644 --- a/state/indexer/tx/kv/kv_bench_test.go +++ b/state/indexer/tx/kv/kv_bench_test.go @@ -7,11 +7,10 @@ import ( "io/ioutil" "testing" - dbm "github.com/tendermint/tm-db" - abci "github.com/tendermint/tendermint/abci/types" "github.com/tendermint/tendermint/libs/pubsub/query" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/goleveldb" ) func BenchmarkTxSearch(b *testing.B) { @@ -20,7 +19,7 @@ func BenchmarkTxSearch(b *testing.B) { b.Errorf("failed to create temporary directory: %s", err) } - db, err := dbm.NewGoLevelDB("benchmark_tx_search_test", dbDir) + db, err := goleveldb.NewDB("benchmark_tx_search_test", dbDir) if err != nil { b.Errorf("failed to create database: %s", err) } diff --git a/state/indexer/tx/kv/kv_test.go b/state/indexer/tx/kv/kv_test.go index dd63dd9a4..025f2b2ae 100644 --- a/state/indexer/tx/kv/kv_test.go +++ b/state/indexer/tx/kv/kv_test.go @@ -11,17 +11,16 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - db "github.com/tendermint/tm-db" - abci "github.com/tendermint/tendermint/abci/types" "github.com/tendermint/tendermint/libs/pubsub/query" tmrand "github.com/tendermint/tendermint/libs/rand" indexer "github.com/tendermint/tendermint/state/indexer" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" ) func TestTxIndex(t *testing.T) { - txIndexer := NewTxIndex(db.NewMemDB()) + txIndexer := NewTxIndex(memdb.NewDB()) tx := types.Tx("HELLO WORLD") txResult := &abci.TxResult{ @@ -67,7 +66,7 @@ func TestTxIndex(t *testing.T) { } func TestTxSearch(t *testing.T) { - indexer := NewTxIndex(db.NewMemDB()) + indexer := NewTxIndex(memdb.NewDB()) txResult := txResultWithEvents([]abci.Event{ {Type: "account", Attributes: []abci.EventAttribute{{Key: "number", Value: "1", Index: true}}}, @@ -147,7 +146,7 @@ func TestTxSearch(t *testing.T) { } func TestTxSearchWithCancelation(t *testing.T) { - indexer := NewTxIndex(db.NewMemDB()) + indexer := NewTxIndex(memdb.NewDB()) txResult := txResultWithEvents([]abci.Event{ {Type: "account", Attributes: []abci.EventAttribute{{Key: "number", Value: "1", Index: true}}}, @@ -165,7 +164,7 @@ func TestTxSearchWithCancelation(t *testing.T) { } func TestTxSearchDeprecatedIndexing(t *testing.T) { - indexer := NewTxIndex(db.NewMemDB()) + indexer := NewTxIndex(memdb.NewDB()) // index tx using events indexing (composite key) txResult1 := txResultWithEvents([]abci.Event{ @@ -244,7 +243,7 @@ func TestTxSearchDeprecatedIndexing(t *testing.T) { } func TestTxSearchOneTxWithMultipleSameTagsButDifferentValues(t *testing.T) { - indexer := NewTxIndex(db.NewMemDB()) + indexer := NewTxIndex(memdb.NewDB()) txResult := txResultWithEvents([]abci.Event{ {Type: "account", Attributes: []abci.EventAttribute{{Key: "number", Value: "1", Index: true}}}, @@ -266,7 +265,7 @@ func TestTxSearchOneTxWithMultipleSameTagsButDifferentValues(t *testing.T) { } func TestTxSearchMultipleTxs(t *testing.T) { - indexer := NewTxIndex(db.NewMemDB()) + indexer := NewTxIndex(memdb.NewDB()) // indexed first, but bigger height (to test the order of transactions) txResult := txResultWithEvents([]abci.Event{ diff --git a/state/state_test.go b/state/state_test.go index 99d45bb62..4c94ca379 100644 --- a/state/state_test.go +++ b/state/state_test.go @@ -13,8 +13,6 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" - abci "github.com/tendermint/tendermint/abci/types" cfg "github.com/tendermint/tendermint/config" "github.com/tendermint/tendermint/crypto/ed25519" @@ -23,6 +21,7 @@ import ( sm "github.com/tendermint/tendermint/state" sf "github.com/tendermint/tendermint/state/test/factory" "github.com/tendermint/tendermint/types" + dbm "github.com/tendermint/tm-db/metadb" ) // setupTestCase does setup common to all test cases. diff --git a/state/store_test.go b/state/store_test.go index 5d32040b5..34a762e35 100644 --- a/state/store_test.go +++ b/state/store_test.go @@ -8,8 +8,6 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - dbm "github.com/tendermint/tm-db" - abci "github.com/tendermint/tendermint/abci/types" cfg "github.com/tendermint/tendermint/config" "github.com/tendermint/tendermint/crypto" @@ -19,6 +17,8 @@ import ( tmstate "github.com/tendermint/tendermint/proto/tendermint/state" sm "github.com/tendermint/tendermint/state" "github.com/tendermint/tendermint/types" + "github.com/tendermint/tm-db/memdb" + dbm "github.com/tendermint/tm-db/metadb" ) const ( @@ -27,7 +27,7 @@ const ( ) func TestStoreBootstrap(t *testing.T) { - stateDB := dbm.NewMemDB() + stateDB := memdb.NewDB() stateStore := sm.NewStore(stateDB) val, _ := factory.RandValidator(true, 10) val2, _ := factory.RandValidator(true, 10) @@ -53,7 +53,7 @@ func TestStoreBootstrap(t *testing.T) { } func TestStoreLoadValidators(t *testing.T) { - stateDB := dbm.NewMemDB() + stateDB := memdb.NewDB() stateStore := sm.NewStore(stateDB) val, _ := factory.RandValidator(true, 10) val2, _ := factory.RandValidator(true, 10) @@ -140,7 +140,7 @@ func BenchmarkLoadValidators(b *testing.B) { } func TestStoreLoadConsensusParams(t *testing.T) { - stateDB := dbm.NewMemDB() + stateDB := memdb.NewDB() stateStore := sm.NewStore(stateDB) err := stateStore.Save(makeRandomStateFromConsensusParams(types.DefaultConsensusParams(), 1, 1)) require.NoError(t, err) @@ -182,7 +182,7 @@ func TestPruneStates(t *testing.T) { for name, tc := range testcases { tc := tc t.Run(name, func(t *testing.T) { - db := dbm.NewMemDB() + db := memdb.NewDB() stateStore := sm.NewStore(db) pk := ed25519.GenPrivKey().PubKey() diff --git a/state/validation_test.go b/state/validation_test.go index 151f2be61..2e44a5bb2 100644 --- a/state/validation_test.go +++ b/state/validation_test.go @@ -22,7 +22,7 @@ import ( sf "github.com/tendermint/tendermint/state/test/factory" "github.com/tendermint/tendermint/store" "github.com/tendermint/tendermint/types" - dbm "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" ) const validationTestsStopHeight int64 = 10 @@ -34,7 +34,7 @@ func TestValidateBlockHeader(t *testing.T) { state, stateDB, privVals := makeState(3, 1) stateStore := sm.NewStore(stateDB) - blockStore := store.NewBlockStore(dbm.NewMemDB()) + blockStore := store.NewBlockStore(memdb.NewDB()) blockExec := sm.NewBlockExecutor( stateStore, log.TestingLogger(), @@ -121,7 +121,7 @@ func TestValidateBlockCommit(t *testing.T) { state, stateDB, privVals := makeState(1, 1) stateStore := sm.NewStore(stateDB) - blockStore := store.NewBlockStore(dbm.NewMemDB()) + blockStore := store.NewBlockStore(memdb.NewDB()) blockExec := sm.NewBlockExecutor( stateStore, log.TestingLogger(), @@ -242,7 +242,7 @@ func TestValidateBlockEvidence(t *testing.T) { state, stateDB, privVals := makeState(4, 1) stateStore := sm.NewStore(stateDB) - blockStore := store.NewBlockStore(dbm.NewMemDB()) + blockStore := store.NewBlockStore(memdb.NewDB()) defaultEvidenceTime := time.Date(2019, 1, 1, 0, 0, 0, 0, time.UTC) evpool := &mocks.EvidencePool{} diff --git a/store/store_test.go b/store/store_test.go index 2132d9aff..58476b6f7 100644 --- a/store/store_test.go +++ b/store/store_test.go @@ -11,6 +11,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" dbm "github.com/tendermint/tm-db" + "github.com/tendermint/tm-db/memdb" cfg "github.com/tendermint/tendermint/config" "github.com/tendermint/tendermint/crypto" @@ -47,7 +48,7 @@ func makeTestCommit(height int64, timestamp time.Time) *types.Commit { func makeStateAndBlockStore(logger log.Logger) (sm.State, *BlockStore, cleanupFunc) { config := cfg.ResetTestRoot("blockchain_reactor_test") - blockDB := dbm.NewMemDB() + blockDB := memdb.NewDB() state, err := sm.MakeGenesisStateFromFile(config.GenesisFile()) if err != nil { panic(fmt.Errorf("error constructing state from genesis file: %w", err)) @@ -56,7 +57,7 @@ func makeStateAndBlockStore(logger log.Logger) (sm.State, *BlockStore, cleanupFu } func freshBlockStore() (*BlockStore, dbm.DB) { - db := dbm.NewMemDB() + db := memdb.NewDB() return NewBlockStore(db), db } @@ -296,7 +297,7 @@ func TestLoadBaseMeta(t *testing.T) { defer os.RemoveAll(config.RootDir) state, err := sm.MakeGenesisStateFromFile(config.GenesisFile()) require.NoError(t, err) - bs := NewBlockStore(dbm.NewMemDB()) + bs := NewBlockStore(memdb.NewDB()) for h := int64(1); h <= 10; h++ { block := factory.MakeBlock(state, h, new(types.Commit)) @@ -352,7 +353,7 @@ func TestPruneBlocks(t *testing.T) { defer os.RemoveAll(config.RootDir) state, err := sm.MakeGenesisStateFromFile(config.GenesisFile()) require.NoError(t, err) - db := dbm.NewMemDB() + db := memdb.NewDB() bs := NewBlockStore(db) assert.EqualValues(t, 0, bs.Base()) assert.EqualValues(t, 0, bs.Height())