Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(x/ecocredit): add basket state migration #1397

Merged
merged 10 commits into from
Aug 25, 2022

Conversation

aleem1314
Copy link
Contributor

@aleem1314 aleem1314 commented Aug 24, 2022

Description

Ref: #1358


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...

  • included the correct type prefix in the PR title
  • added ! to the type prefix if API or client breaking change
  • targeted the correct branch (see PR Targeting)
  • provided a link to the relevant issue or specification
  • followed the guidelines for building modules
  • included the necessary unit and integration tests
  • added a changelog entry to CHANGELOG.md
  • included comments for documenting Go code
  • updated the relevant documentation or specification
  • 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 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)

@aleem1314 aleem1314 marked this pull request as ready for review August 24, 2022 15:06
@aleem1314 aleem1314 requested a review from a team August 24, 2022 15:06
Copy link
Contributor

@technicallyty technicallyty left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! nice to be able to use the native register migrations 👍🏻

Copy link
Member

@ryanchristo ryanchristo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested an upgrade from v4 to v5 and it looks like the upgrade resets the basket fees param to an empty array. Tested updating the param with a chain that start on v5 and it works as expected.

https://hackmd.io/MP6BaYA_SOiQtEomPD8ong

Also, I believe we should be using the consensus version rather than the regen-ledger version for the migration name, same as the sdk. The sdk is still using the sdk version in some modules but are migrating to the use of the consensus version.

https://github.com/cosmos/cosmos-sdk/tree/main/x/gov/migrations

@ryanchristo
Copy link
Member

For reference (use of consensus version and using migrator):

https://github.com/cosmos/cosmos-sdk/blob/main/docs/architecture/adr-041-in-place-store-migrations.md

@aleem1314
Copy link
Contributor Author

Tested an upgrade from v4 to v5 and it looks like the upgrade resets the basket fees param to an empty array. Tested updating the param with a chain that start on v5 and it works as expected.

Nice catch. The issue is when we start a new chain SDK module manager sets a consensus version for registered modules (we are not using SDK's module manager for regen modules). The ecocredit module migrations not running because there is no consensus version present in the state. I've updated the upgrade handler to initialize the consensus version for ecocredit and data modules.

Copy link
Member

@ryanchristo ryanchristo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

x/ecocredit/migrations/v3/state.go Outdated Show resolved Hide resolved
Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>
@ryanchristo ryanchristo merged commit 494d801 into main Aug 25, 2022
@ryanchristo ryanchristo deleted the aleem/1358-basket-state-migration branch August 25, 2022 16:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants