mirror of
https://github.com/tendermint/tendermint.git
synced 2026-01-03 19:53:58 +00:00
node: cleanup setup for indexer and evidence components (#8378)
This commit is contained in:
13
node/node.go
13
node/node.go
@@ -29,6 +29,7 @@ import (
|
||||
rpccore "github.com/tendermint/tendermint/internal/rpc/core"
|
||||
sm "github.com/tendermint/tendermint/internal/state"
|
||||
"github.com/tendermint/tendermint/internal/state/indexer"
|
||||
"github.com/tendermint/tendermint/internal/state/indexer/sink"
|
||||
"github.com/tendermint/tendermint/internal/statesync"
|
||||
"github.com/tendermint/tendermint/internal/store"
|
||||
"github.com/tendermint/tendermint/libs/log"
|
||||
@@ -168,15 +169,19 @@ func makeNode(
|
||||
Metrics: nodeMetrics.eventlog,
|
||||
})
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("initializing event log: %w", err)
|
||||
return nil, combineCloseError(fmt.Errorf("initializing event log: %w", err), makeCloser(closers))
|
||||
}
|
||||
}
|
||||
|
||||
indexerService, eventSinks, err := createIndexerService(
|
||||
cfg, dbProvider, eventBus, logger, genDoc.ChainID, nodeMetrics.indexer)
|
||||
eventSinks, err := sink.EventSinksFromConfig(cfg, dbProvider, genDoc.ChainID)
|
||||
if err != nil {
|
||||
return nil, combineCloseError(err, makeCloser(closers))
|
||||
}
|
||||
indexerService := indexer.NewService(indexer.ServiceArgs{
|
||||
Sinks: eventSinks,
|
||||
EventBus: eventBus,
|
||||
Logger: logger.With("module", "txindex"),
|
||||
Metrics: nodeMetrics.indexer,
|
||||
})
|
||||
|
||||
privValidator, err := createPrivval(ctx, logger, cfg, genDoc, filePrivval)
|
||||
if err != nil {
|
||||
|
||||
@@ -28,6 +28,7 @@ import (
|
||||
"github.com/tendermint/tendermint/internal/pubsub"
|
||||
sm "github.com/tendermint/tendermint/internal/state"
|
||||
"github.com/tendermint/tendermint/internal/state/indexer"
|
||||
"github.com/tendermint/tendermint/internal/state/indexer/sink"
|
||||
"github.com/tendermint/tendermint/internal/store"
|
||||
"github.com/tendermint/tendermint/internal/test/factory"
|
||||
"github.com/tendermint/tendermint/libs/log"
|
||||
@@ -636,11 +637,9 @@ func TestNodeSetEventSink(t *testing.T) {
|
||||
genDoc, err := types.GenesisDocFromFile(cfg.GenesisFile())
|
||||
require.NoError(t, err)
|
||||
|
||||
indexService, eventSinks, err := createIndexerService(cfg,
|
||||
config.DefaultDBProvider, eventBus, logger, genDoc.ChainID,
|
||||
indexer.NopMetrics())
|
||||
eventSinks, err := sink.EventSinksFromConfig(cfg, config.DefaultDBProvider, genDoc.ChainID)
|
||||
require.NoError(t, err)
|
||||
t.Cleanup(indexService.Wait)
|
||||
|
||||
return eventSinks
|
||||
}
|
||||
cleanup := func(ns service.Service) func() {
|
||||
|
||||
@@ -23,7 +23,6 @@ import (
|
||||
"github.com/tendermint/tendermint/internal/p2p/pex"
|
||||
sm "github.com/tendermint/tendermint/internal/state"
|
||||
"github.com/tendermint/tendermint/internal/state/indexer"
|
||||
"github.com/tendermint/tendermint/internal/state/indexer/sink"
|
||||
"github.com/tendermint/tendermint/internal/statesync"
|
||||
"github.com/tendermint/tendermint/internal/store"
|
||||
"github.com/tendermint/tendermint/libs/log"
|
||||
@@ -95,29 +94,6 @@ func initDBs(
|
||||
return blockStore, stateDB, makeCloser(closers), nil
|
||||
}
|
||||
|
||||
func createIndexerService(
|
||||
cfg *config.Config,
|
||||
dbProvider config.DBProvider,
|
||||
eventBus *eventbus.EventBus,
|
||||
logger log.Logger,
|
||||
chainID string,
|
||||
metrics *indexer.Metrics,
|
||||
) (*indexer.Service, []indexer.EventSink, error) {
|
||||
eventSinks, err := sink.EventSinksFromConfig(cfg, dbProvider, chainID)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
|
||||
indexerService := indexer.NewService(indexer.ServiceArgs{
|
||||
Sinks: eventSinks,
|
||||
EventBus: eventBus,
|
||||
Logger: logger.With("module", "txindex"),
|
||||
Metrics: metrics,
|
||||
})
|
||||
|
||||
return indexerService, eventSinks, nil
|
||||
}
|
||||
|
||||
func logNodeStartupInfo(state sm.State, pubKey crypto.PubKey, logger log.Logger, mode string) {
|
||||
// Log the version info.
|
||||
logger.Info("Version info",
|
||||
@@ -215,20 +191,13 @@ func createEvidenceReactor(
|
||||
if err != nil {
|
||||
return nil, nil, func() error { return nil }, fmt.Errorf("unable to initialize evidence db: %w", err)
|
||||
}
|
||||
dbCloser := evidenceDB.Close
|
||||
|
||||
logger = logger.With("module", "evidence")
|
||||
|
||||
evidencePool := evidence.NewPool(logger, evidenceDB, store, blockStore, metrics, eventBus)
|
||||
evidenceReactor := evidence.NewReactor(logger, chCreator, peerEvents, evidencePool)
|
||||
|
||||
evidenceReactor := evidence.NewReactor(
|
||||
logger,
|
||||
chCreator,
|
||||
peerEvents,
|
||||
evidencePool,
|
||||
)
|
||||
|
||||
return evidenceReactor, evidencePool, dbCloser, nil
|
||||
return evidenceReactor, evidencePool, evidenceDB.Close, nil
|
||||
}
|
||||
|
||||
func createPeerManager(
|
||||
|
||||
Reference in New Issue
Block a user