mirror of
https://github.com/tendermint/tendermint.git
synced 2026-09-21 07:24:36 +00:00
libs/service: pass logger explicitly (#7288)
This is a very small change, but removes a method from the `service.Service` interface (a win!) and forces callers to explicitly pass loggers in to objects during construction rather than (later) injecting them. There's not a real need for this kind of lazy construction of loggers, and I think a decent potential for confusion for mutable loggers. The main concern I have is that this changes the constructor API for ABCI clients. I think this is fine, and I suspect that as we plumb contexts through, and make changes to the RPC services there'll be a number of similar sorts of changes to various (quasi) public interfaces, which I think we should welcome.
This commit is contained in:
@@ -38,7 +38,8 @@ var (
|
||||
func TestApplyBlock(t *testing.T) {
|
||||
app := &testApp{}
|
||||
cc := abciclient.NewLocalCreator(app)
|
||||
proxyApp := proxy.NewAppConns(cc, proxy.NopMetrics())
|
||||
logger := log.TestingLogger()
|
||||
proxyApp := proxy.NewAppConns(cc, logger, proxy.NopMetrics())
|
||||
err := proxyApp.Start()
|
||||
require.Nil(t, err)
|
||||
defer proxyApp.Stop() //nolint:errcheck // ignore for tests
|
||||
@@ -46,7 +47,7 @@ func TestApplyBlock(t *testing.T) {
|
||||
state, stateDB, _ := makeState(1, 1)
|
||||
stateStore := sm.NewStore(stateDB)
|
||||
blockStore := store.NewBlockStore(dbm.NewMemDB())
|
||||
blockExec := sm.NewBlockExecutor(stateStore, log.TestingLogger(), proxyApp.Consensus(),
|
||||
blockExec := sm.NewBlockExecutor(stateStore, logger, proxyApp.Consensus(),
|
||||
mmock.Mempool{}, sm.EmptyEvidencePool{}, blockStore)
|
||||
|
||||
block := sf.MakeBlock(state, 1, new(types.Commit))
|
||||
@@ -63,7 +64,7 @@ func TestApplyBlock(t *testing.T) {
|
||||
func TestBeginBlockValidators(t *testing.T) {
|
||||
app := &testApp{}
|
||||
cc := abciclient.NewLocalCreator(app)
|
||||
proxyApp := proxy.NewAppConns(cc, proxy.NopMetrics())
|
||||
proxyApp := proxy.NewAppConns(cc, log.TestingLogger(), proxy.NopMetrics())
|
||||
err := proxyApp.Start()
|
||||
require.Nil(t, err)
|
||||
defer proxyApp.Stop() //nolint:errcheck // no need to check error again
|
||||
@@ -126,7 +127,7 @@ func TestBeginBlockValidators(t *testing.T) {
|
||||
func TestBeginBlockByzantineValidators(t *testing.T) {
|
||||
app := &testApp{}
|
||||
cc := abciclient.NewLocalCreator(app)
|
||||
proxyApp := proxy.NewAppConns(cc, proxy.NopMetrics())
|
||||
proxyApp := proxy.NewAppConns(cc, log.TestingLogger(), proxy.NopMetrics())
|
||||
err := proxyApp.Start()
|
||||
require.Nil(t, err)
|
||||
defer proxyApp.Stop() //nolint:errcheck // ignore for tests
|
||||
@@ -351,7 +352,8 @@ func TestUpdateValidators(t *testing.T) {
|
||||
func TestEndBlockValidatorUpdates(t *testing.T) {
|
||||
app := &testApp{}
|
||||
cc := abciclient.NewLocalCreator(app)
|
||||
proxyApp := proxy.NewAppConns(cc, proxy.NopMetrics())
|
||||
logger := log.TestingLogger()
|
||||
proxyApp := proxy.NewAppConns(cc, logger, proxy.NopMetrics())
|
||||
err := proxyApp.Start()
|
||||
require.Nil(t, err)
|
||||
defer proxyApp.Stop() //nolint:errcheck // ignore for tests
|
||||
@@ -362,14 +364,14 @@ func TestEndBlockValidatorUpdates(t *testing.T) {
|
||||
|
||||
blockExec := sm.NewBlockExecutor(
|
||||
stateStore,
|
||||
log.TestingLogger(),
|
||||
logger,
|
||||
proxyApp.Consensus(),
|
||||
mmock.Mempool{},
|
||||
sm.EmptyEvidencePool{},
|
||||
blockStore,
|
||||
)
|
||||
|
||||
eventBus := eventbus.NewDefault()
|
||||
eventBus := eventbus.NewDefault(logger)
|
||||
err = eventBus.Start()
|
||||
require.NoError(t, err)
|
||||
defer eventBus.Stop() //nolint:errcheck // ignore for tests
|
||||
@@ -420,7 +422,8 @@ func TestEndBlockValidatorUpdates(t *testing.T) {
|
||||
func TestEndBlockValidatorUpdatesResultingInEmptySet(t *testing.T) {
|
||||
app := &testApp{}
|
||||
cc := abciclient.NewLocalCreator(app)
|
||||
proxyApp := proxy.NewAppConns(cc, proxy.NopMetrics())
|
||||
logger := log.TestingLogger()
|
||||
proxyApp := proxy.NewAppConns(cc, logger, proxy.NopMetrics())
|
||||
err := proxyApp.Start()
|
||||
require.Nil(t, err)
|
||||
defer proxyApp.Stop() //nolint:errcheck // ignore for tests
|
||||
|
||||
@@ -16,6 +16,7 @@ import (
|
||||
sm "github.com/tendermint/tendermint/internal/state"
|
||||
sf "github.com/tendermint/tendermint/internal/state/test/factory"
|
||||
"github.com/tendermint/tendermint/internal/test/factory"
|
||||
"github.com/tendermint/tendermint/libs/log"
|
||||
tmrand "github.com/tendermint/tendermint/libs/rand"
|
||||
tmtime "github.com/tendermint/tendermint/libs/time"
|
||||
tmstate "github.com/tendermint/tendermint/proto/tendermint/state"
|
||||
@@ -31,7 +32,7 @@ type paramsChangeTestCase struct {
|
||||
func newTestApp() proxy.AppConns {
|
||||
app := &testApp{}
|
||||
cc := abciclient.NewLocalCreator(app)
|
||||
return proxy.NewAppConns(cc, proxy.NopMetrics())
|
||||
return proxy.NewAppConns(cc, log.NewNopLogger(), proxy.NopMetrics())
|
||||
}
|
||||
|
||||
func makeAndCommitGoodBlock(
|
||||
|
||||
@@ -41,15 +41,6 @@ func NewService(args ServiceArgs) *Service {
|
||||
return is
|
||||
}
|
||||
|
||||
// NewIndexerService returns a new service instance.
|
||||
// Deprecated: Use NewService instead.
|
||||
func NewIndexerService(es []EventSink, eventBus *eventbus.EventBus) *Service {
|
||||
return NewService(ServiceArgs{
|
||||
Sinks: es,
|
||||
EventBus: eventBus,
|
||||
})
|
||||
}
|
||||
|
||||
// publish publishes a pubsub message to the service. The service blocks until
|
||||
// the message has been fully processed.
|
||||
func (is *Service) publish(msg pubsub.Message) error {
|
||||
|
||||
@@ -38,10 +38,18 @@ var (
|
||||
dbName = "postgres"
|
||||
)
|
||||
|
||||
// NewIndexerService returns a new service instance.
|
||||
func NewIndexerService(es []indexer.EventSink, eventBus *eventbus.EventBus) *indexer.Service {
|
||||
return indexer.NewService(indexer.ServiceArgs{
|
||||
Sinks: es,
|
||||
EventBus: eventBus,
|
||||
})
|
||||
}
|
||||
|
||||
func TestIndexerServiceIndexesBlocks(t *testing.T) {
|
||||
logger := tmlog.TestingLogger()
|
||||
// event bus
|
||||
eventBus := eventbus.NewDefault()
|
||||
eventBus.SetLogger(tmlog.TestingLogger())
|
||||
eventBus := eventbus.NewDefault(logger)
|
||||
err := eventBus.Start()
|
||||
require.NoError(t, err)
|
||||
t.Cleanup(func() {
|
||||
@@ -62,8 +70,7 @@ func TestIndexerServiceIndexesBlocks(t *testing.T) {
|
||||
assert.True(t, indexer.KVSinkEnabled(eventSinks))
|
||||
assert.True(t, indexer.IndexingEnabled(eventSinks))
|
||||
|
||||
service := indexer.NewIndexerService(eventSinks, eventBus)
|
||||
service.SetLogger(tmlog.TestingLogger())
|
||||
service := NewIndexerService(eventSinks, eventBus)
|
||||
err = service.Start()
|
||||
require.NoError(t, err)
|
||||
t.Cleanup(func() {
|
||||
|
||||
Reference in New Issue
Block a user