Open plaidfinch opened 6 months ago
Good point, this will also show up if the state was corrupted during state export or during the migration. Ideally, we would take a couple flags about what we expect the pre-upgrade and what the post-upgrade states to be and fail early. This will require updating the various guides though.
Describe the bug
If you use a post-migration genesis file (such as the current one as of this writing) which refers only to hashed state but does not contain a bundle of genesis state, but you do not start
pd
with a snapshot of rocksdb (i.e. it has nothing in its state directory to start) then the resulting error message does not tell you what you did wrong; instead it is a panic from anexpect
that is asserting the presence of current consensus keys.To Reproduce
Expected behavior
It is correct that pd should fail to start in this situation, but it should provide direction to the user instructing them on how to resolve the issue, since it does know that the genesis file is post-migration. It should fail earlier with an informative error message if the state is missing.