Skip to content

Commit

Permalink
Revert "fix flaky test: TestSpacemeshApp_NodeService (spacemeshos#4728)"
Browse files Browse the repository at this point in the history
This reverts commit e91d735.
  • Loading branch information
dshulyak committed Jul 21, 2023
1 parent 88890f4 commit 20a69b2
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 23 deletions.
12 changes: 3 additions & 9 deletions activation/activation.go
Original file line number Diff line number Diff line change
Expand Up @@ -320,19 +320,13 @@ func (b *Builder) verifyInitialPost(ctx context.Context, post *types.Post, metad
if err != nil {
b.log.With().Panic("failed to fetch commitment ATX ID.", log.Err(err))
}
err = b.validator.Post(ctx, types.EpochID(0), b.nodeID, commitmentAtxId, post, metadata, b.postSetupProvider.LastOpts().NumUnits)
switch {
case errors.Is(err, context.Canceled):
// If the context was canceled, we don't want to emit or log errors just propagate the cancellation signal.
return err
case err != nil:
if err := b.validator.Post(ctx, types.EpochID(0), b.nodeID, commitmentAtxId, post, metadata, b.postSetupProvider.LastOpts().NumUnits); err != nil {
events.EmitInvalidPostProof()
b.log.With().Fatal("initial POST proof is invalid. Probably the initialized POST data is corrupted. Please verify the data with postcli and regenerate the corrupted files.", log.Err(err))
return err
default:
b.initialPost = post
return nil
}
b.initialPost = post
return nil
}

func (b *Builder) receivePendingPoetClients() *[]PoetProvingServiceClient {
Expand Down
3 changes: 1 addition & 2 deletions node/bad_peer_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -127,8 +127,7 @@ func NewApp(conf *config.Config) (*App, error) {
WithConfig(conf),
WithLog(log.RegisterHooks(
log.NewWithLevel("", zap.NewAtomicLevelAt(zapcore.DebugLevel)),
events.EventHook()),
),
events.EventHook())),
)

var err error
Expand Down
12 changes: 4 additions & 8 deletions node/node.go
Original file line number Diff line number Diff line change
Expand Up @@ -130,9 +130,8 @@ func GetCommand() *cobra.Command {
// NOTE(dshulyak) this needs to be max level so that child logger can can be current level or below.
// otherwise it will fail later when child logger will try to increase level.
WithLog(log.RegisterHooks(
log.NewWithLevel("node", zap.NewAtomicLevelAt(zap.InfoLevel)),
events.EventHook()),
),
log.NewWithLevel("", zap.NewAtomicLevelAt(zapcore.DebugLevel)),
events.EventHook())),
)

run := func(ctx context.Context) error {
Expand Down Expand Up @@ -294,7 +293,8 @@ func New(opts ...Option) *App {
for _, opt := range opts {
opt(app)
}
log.SetupGlobal(app.log)
lvl := zap.NewAtomicLevelAt(zap.InfoLevel)
log.SetupGlobal(app.log.SetLevel(&lvl))
types.SetNetworkHRP(app.Config.NetworkHRP)
return app
}
Expand Down Expand Up @@ -1192,10 +1192,6 @@ func (app *App) stopServices(ctx context.Context) {
}

events.CloseEventReporter()
// SetGrpcLogger unfortunately is global
// this ensures that a test-logger isn't used after the app shuts down
// by e.g. a grpc connection to the node that is still open - like in TestSpacemeshApp_NodeService
grpczap.SetGrpcLoggerV2(grpclog, log.NewNop().Zap())
}

// LoadOrCreateEdSigner either loads a previously created ed identity for the node or creates a new one if not exists.
Expand Down
10 changes: 6 additions & 4 deletions node/node_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -410,22 +410,24 @@ func TestSpacemeshApp_JsonService(t *testing.T) {

// E2E app test of the stream endpoints in the NodeService.
func TestSpacemeshApp_NodeService(t *testing.T) {
logger := logtest.New(t, zapcore.ErrorLevel)
errlog := log.RegisterHooks(logger, events.EventHook()) // errlog is used to simulate errors in the app
t.Skip("flaky on macos-latest: https://github.com/spacemeshos/go-spacemesh/issues/4729")
// errlog should be used only for testing.
logger := logtest.New(t)
errlog := log.RegisterHooks(logtest.New(t, zap.ErrorLevel), events.EventHook())

// Use a unique port
port := 1240

app := New(WithLog(logger))
app.Config = getTestDefaultConfig(t)
app.Config.SMESHING.CoinbaseAccount = types.GenerateAddress([]byte{1}).String()
app.Config.SMESHING.Opts.DataDir = t.TempDir()
app.Config.SMESHING.Opts.DataDir, _ = os.MkdirTemp("", "sm-app-test-post-datadir")

clock, err := timesync.NewClock(
timesync.WithLayerDuration(1*time.Second),
timesync.WithTickInterval(100*time.Millisecond),
timesync.WithGenesisTime(time.Now()),
timesync.WithLogger(logger),
timesync.WithLogger(logtest.New(t)),
)
require.NoError(t, err)
app.clock = clock
Expand Down

0 comments on commit 20a69b2

Please sign in to comment.