When upgrading existing database make sure that you read the release notes for all version between your current version and the version that you are upgrading to.
The biggest risk when upgrading is to upgrade a fast synced node that is not in a synced state with a new pivot block in configuration (changing the pivot block after sync should not be done - we are in the process of writing code that would prevent it).
Generally you should ensure that when you upgrade:
- use the same pivot block data as in the initial sync
- OR drop the database and resync
Each release of Nethermind is going through the following test procedure:
- Exploratory testing, including mainnet resyncs, Goerli validator testing, JSON RPC
- Nethermind specific unit and integration tests are executed
- Ethereum tests are executed for EVM, fork choice, RLP, Trie
- Legacy (old network versions) Ethereum tests are executed for EVM, fork choice, RLP, Trie
- Hive tests for networking, sync and consensus are executed
- Deployment of an ERC20 contract from Truffle to Nethermind spaceneth network
- Smoke Tests are Executed for each of the following syncs:
Example of sync test results