As the chain state goes larger and larger, it gets hard to export/fetch the chain state.
Are there any other tools aside from fork-off-substrate and try-runtime for performing a runtime migration?
As the chain state goes larger and larger, it gets hard to export/fetch the chain state.
Are there any other tools aside from fork-off-substrate and try-runtime for performing a runtime migration?
fork-off-substrate
does not work for large chain state indeed.
The try-runtime CLI got moved into its own repo try-runtime-cli with documentation linked here.
We use this regularly in CI and it works well for Polkadot and Kusama. For very large states >10GB it will need some adaptions, so it depends on how large your state currently is.
You can also check out try-runtime: https://docs.substrate.io/reference/how-to-guides/tools/use-try-runtime/
try-runtime-cli
has a snapshot feature which allows downloading the state from the node once (slow) and then saving it to disk. Once you have that state on disk, you can use it when callingon-runtime-upgrade
by passingsnap
instead oflive
, which loads the state almost instantly.