Closed liamaharon closed 1 year ago
I think fast-forward
is good, since follow-chain
applies extrinsics; those get rejected while MBMs are active anyway. (and is slow)
Just calling on_runtime_upgrade
and then on_initialize
repeatedly until event UpgradeCompleted | UpgradeFailed
is received is enough AFAIK.
Yeah, calling on_runtime_upgrade
and then on_initialize
repeatedly is a better idea and will be easier to implement, thanks @ggwpez 👌
What do you think about adding a try-runtime
feature gated method to the migrations pallet called something like run_to_completion
that does that? That way, the cli tool needs not be concerned about the mechanism that migrations progress.
Originally posted by @liamaharon in https://github.com/paritytech/substrate/issues/14275#issuecomment-1570824518
Kian response:
I don't think
follow-chain
is necessarily a good solution.post_upgrade
hook once its migration has finished executing.follow-chain
, making development iterations much slower and requiring a live node running. Some of the plumbing infast-forward
is might be a better solution here?Ideally, I think we'd be able to run
on-runtime-upgrade
like usual and it'll fast-forward until all migrations have completed, and then run a post_migration hook. Unfortunately fast-forward is not production ready due to the inherents issue, it seems this feature makes fixing the inherents issue much higher priority now?