State migration consistence test when upgrading #8165
-
To answer the question whether each implementation is functioning the same way in the next network version, we had review, butterfly network and calibration network testing, aside from all of these, could we do more to line up directly on the main net? Here is a proposal: whenever there is a new network version with state migration, we do upgrading simulation directly on main net at a particular height. Every implementation sync the main net, upgrades at the same height, and report the new state root right after the states migrated. Of course, all the roots provided by different implementations must be identical. Could we put this into our upgrading process? |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 5 replies
-
@steven004 Just to clarify, venus and lotus both are running and new network version is coming at epoch x. So when both nodes sync to epoch x, we match the stateroot of x(or parentstateroot of x+1) on both nodes and make sure it is the same. If there are more implementations then we do the same with them as well. Is this the suggested test? Where do you propose should this test go in an upgrade process and what advantages would it provide? |
Beta Was this translation helpful? Give feedback.
-
@steven004 This sounds like a reasonable check to add. I'll add it to our ntwk v16 upgrade readiness checklist. |
Beta Was this translation helpful? Give feedback.
-
This is a great idea, @steven004!! In order to make this more visible, I started a new discussion in the TPM repo and suggested a tipset for testing. I'll flag for each implementation team outside of Github as well. CC for migration checklist: @jennijuju |
Beta Was this translation helpful? Give feedback.
-
I am archiving this discussion as it has been moved to a new thread. |
Beta Was this translation helpful? Give feedback.
This is a great idea, @steven004!!
In order to make this more visible, I started a new discussion in the TPM repo and suggested a tipset for testing. I'll flag for each implementation team outside of Github as well.
CC for migration checklist: @jennijuju