revert: Revert RunMigrationBeginBlock addition in v0.50 (#17450)

This commit is contained in:
Julien Robert
2023-08-18 20:48:38 +00:00
committed by GitHub
parent 657add7a8a
commit b7d9d4c8a9
14 changed files with 9 additions and 289 deletions
-5
View File
@@ -28,8 +28,3 @@ type CoreAppModule interface {
appmodule.HasPrecommit
appmodule.HasPrepareCheckState
}
type CoreUpgradeAppModule interface {
CoreAppModule
appmodule.UpgradeModule
}
+4 -21
View File
@@ -696,32 +696,15 @@ func (m Manager) RunMigrations(ctx context.Context, cfg Configurator, fromVM Ver
return updatedVM, nil
}
// RunMigrationBeginBlock performs begin block functionality for upgrade module.
// It takes the current context as a parameter and returns a boolean value
// indicating whether the migration was executed or not and an error if fails.
func (m *Manager) RunMigrationBeginBlock(ctx sdk.Context) (bool, error) {
for _, moduleName := range m.OrderBeginBlockers {
if mod, ok := m.Modules[moduleName].(appmodule.HasBeginBlocker); ok {
if _, ok := mod.(appmodule.UpgradeModule); ok {
err := mod.BeginBlock(ctx)
return err == nil, err
}
}
}
return false, nil
}
// BeginBlock performs begin block functionality for non-upgrade modules. It creates a
// child context with an event manager to aggregate events emitted from non-upgrade
// BeginBlock performs begin block functionality for all modules. It creates a
// child context with an event manager to aggregate events emitted from all
// modules.
func (m *Manager) BeginBlock(ctx sdk.Context) (sdk.BeginBlock, error) {
ctx = ctx.WithEventManager(sdk.NewEventManager())
for _, moduleName := range m.OrderBeginBlockers {
if module, ok := m.Modules[moduleName].(appmodule.HasBeginBlocker); ok {
if _, ok := module.(appmodule.UpgradeModule); !ok {
if err := module.BeginBlock(ctx); err != nil {
return sdk.BeginBlock{}, err
}
if err := module.BeginBlock(ctx); err != nil {
return sdk.BeginBlock{}, err
}
}
}
-31
View File
@@ -462,37 +462,6 @@ func TestCoreAPIManagerOrderSetters(t *testing.T) {
require.Equal(t, []string{"module3", "module2", "module1"}, mm.OrderPrecommiters)
}
func TestCoreAPIManager_RunMigrationBeginBlock(t *testing.T) {
mockCtrl := gomock.NewController(t)
t.Cleanup(mockCtrl.Finish)
mockAppModule1 := mock.NewMockCoreAppModule(mockCtrl)
mockAppModule2 := mock.NewMockCoreUpgradeAppModule(mockCtrl)
mm := module.NewManagerFromMap(map[string]appmodule.AppModule{
"module1": mockAppModule1,
"module2": mockAppModule2,
})
require.NotNil(t, mm)
require.Equal(t, 2, len(mm.Modules))
mockAppModule1.EXPECT().BeginBlock(gomock.Any()).Times(0)
mockAppModule2.EXPECT().BeginBlock(gomock.Any()).Times(1).Return(nil)
success, err := mm.RunMigrationBeginBlock(sdk.Context{})
require.Equal(t, true, success)
require.NoError(t, err)
// test false
success, err = module.NewManager().RunMigrationBeginBlock(sdk.Context{})
require.Equal(t, false, success)
require.NoError(t, err)
// test panic
mockAppModule2.EXPECT().BeginBlock(gomock.Any()).Times(1).Return(errors.New("some error"))
success, err = mm.RunMigrationBeginBlock(sdk.Context{})
require.Equal(t, false, success)
require.Error(t, err)
}
func TestCoreAPIManager_BeginBlock(t *testing.T) {
mockCtrl := gomock.NewController(t)
t.Cleanup(mockCtrl.Finish)