From f69c82fa7cb2381b0f220be7bcb7f56401e9fd6e Mon Sep 17 00:00:00 2001 From: "mergify[bot]" <37929162+mergify[bot]@users.noreply.github.com> Date: Thu, 3 Feb 2022 14:23:35 +0100 Subject: [PATCH] feat: extra logging in in-place store migrations (backport #10768) (#11107) * feat: extra logging in in-place store migrations (#10768) ## Description Closes: #10689 it'd also be good to add more fine-grained tracking of individual migrations, but there doesn't seem to be a quick way of doing it. Perhaps the best is to leave it to each migration implementation to add its own internal logging? --- ### Author Checklist *All items are required. Please add a note to the item if the item is not applicable and please add links to any relevant follow up issues.* I have... - [x] included the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title - [ ] ~added `!` to the type prefix if API or client breaking change~ - [x] targeted the correct branch (see [PR Targeting](https://github.com/cosmos/cosmos-sdk/blob/master/CONTRIBUTING.md#pr-targeting)) - [x] provided a link to the relevant issue or specification - [x] followed the guidelines for [building modules](https://github.com/cosmos/cosmos-sdk/blob/master/docs/building-modules) - [ ] ~included the necessary unit and integration [tests](https://github.com/cosmos/cosmos-sdk/blob/master/CONTRIBUTING.md#testing)~ - [x] added a changelog entry to `CHANGELOG.md` - [ ] ~included comments for [documenting Go code](https://blog.golang.org/godoc)~ - [ ] ~updated the relevant documentation or specification~ - [x] reviewed "Files changed" and left comments if necessary - [ ] confirmed all CI checks have passed ### Reviewers Checklist *All items are required. Please add a note if the item is not applicable and please add your handle next to the items reviewed if you only reviewed selected items.* I have... - [ ] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title - [ ] confirmed `!` in the type prefix if API or client breaking change - [ ] confirmed all author checklist items have been addressed - [ ] reviewed state machine logic - [ ] reviewed API design and naming - [ ] reviewed documentation is accurate - [ ] reviewed tests and test coverage - [ ] manually tested (if applicable) (cherry picked from commit 8b74157c5704d52801e24dd7024820ed818fdddc) # Conflicts: # types/module/module.go * fix conflict * remove files Co-authored-by: Tomas Tauber <2410580+tomtau@users.noreply.github.com> Co-authored-by: marbar3778 --- CHANGELOG.md | 1 + types/module/configurator.go | 3 +++ types/module/module.go | 1 + 3 files changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index d8b53a49135d..17fa1447aefb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -122,6 +122,7 @@ Ref: https://keepachangelog.com/en/1.0.0/ ### Improvements +* [\#10768](https://github.com/cosmos/cosmos-sdk/pull/10768) Added extra logging for tracking in-place store migrations * [\#10262](https://github.com/cosmos/cosmos-sdk/pull/10262) Remove unnecessary logging in `x/feegrant` simulation. * [\#10327](https://github.com/cosmos/cosmos-sdk/pull/10327) Add null guard for possible nil `Amount` in tx fee `Coins` * [\#10339](https://github.com/cosmos/cosmos-sdk/pull/10339) Improve performance of `removeZeroCoins` by only allocating memory when necessary diff --git a/types/module/configurator.go b/types/module/configurator.go index 3f19e9d27330..07c3b50942cc 100644 --- a/types/module/configurator.go +++ b/types/module/configurator.go @@ -1,6 +1,8 @@ package module import ( + "fmt" + "github.com/gogo/protobuf/grpc" "github.com/cosmos/cosmos-sdk/codec" @@ -103,6 +105,7 @@ func (c configurator) runModuleMigrations(ctx sdk.Context, moduleName string, fr if !found { return sdkerrors.Wrapf(sdkerrors.ErrNotFound, "no migration found for module %s from version %d to version %d", moduleName, i, i+1) } + ctx.Logger().Info(fmt.Sprintf("migrating module %s from version %d to version %d", moduleName, i, i+1)) err := migrateFn(ctx) if err != nil { diff --git a/types/module/module.go b/types/module/module.go index 65ba49082aef..c1955c8b8498 100644 --- a/types/module/module.go +++ b/types/module/module.go @@ -455,6 +455,7 @@ func (m Manager) RunMigrations(ctx sdk.Context, cfg Configurator, fromVM Version } moduleValUpdates := module.InitGenesis(ctx, cfgtor.cdc, module.DefaultGenesis(cfgtor.cdc)) + ctx.Logger().Info(fmt.Sprintf("adding a new module: %s", moduleName)) // The module manager assumes only one module will update the // validator set, and that it will not be by a new module. if len(moduleValUpdates) > 0 {