I have my substrate blockchain application based on Polkadotv0.9.16. I want to upgrade it to latest Polkadot version v.0.9.21. I will be doing this step by step, version by version to avoid big conflicts.

There might be chances that some upstream pallet's storage have been modified. Do I need to write any migration script to support them or fixing only compilation error would work?

1 Answer 1


Yes, you will need to perform storage migrations for any changes in the storage of upstream pallets. However, for Substrate, most of these migrations are already written, and just need to be included in your runtime.

You can find examples of that here: https://github.com/paritytech/polkadot/pulls?q=is%3Apr+label%3AE1-runtimemigration+is%3Aclosed

  • Thanks @Shawn Tabrizi. Could you please tell how to check for particular pallet if storage migration has happened, and what will happen in case when storage migration was not performed during upgrade May 21, 2022 at 12:58
  • You need to look at the PRs in Substrate which are labeled runtime-migration: github.com/paritytech/substrate/…
    – Shawn Tabrizi
    May 21, 2022 at 16:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.