The Bravo/Bahamas release includes features that add new tables and require table migrations. The updates that drive these migrations span several contract deployments and the full cycle must be tested in Devnet.
...
Update all nodes to fio.contracts Bravo
Run JS tests
Run FIP-1.b migration scripts
Run FIP-1.b migration confirmation scripts
Run JS test
FIP-1.a table migration step 1 testing
Running migration test script
Run JS regression tests.
Load up State with known Request and OBT records that can be referenced after Bahamas update. (need to create this test)
Bahamas (fio) update
Fork testing
Ensure nodes are launching with History
Update 6 nodes to fio Bahamas and ensure no forking occurs
Run table migration test against both types of nodes (see below)
Update 15 nodes to fio Bahamas and ensure no forking occurs
Do NOT update remaining nodes to Bahamas
Run FIP-1.b migration confirmation scripts
Run JS regression tests against upgraded nodes.
Run JS regression tests against non-upgraded nodes.
FIP-1.a table migration testing
Use the same Request and OBT records to test FIO Request and OBT against a node on 2.0.0 and a node on Bahamas.
Delta update (fio.contracts Step 2)
FIP-1.b
Update all nodes to fio.contracts Delta
Run JS tests
Run FIP-1.b migration confirmation scripts, confirm upgraded servers have correct, new data and non-upgraded servers do not
Run
migrtrx
to remove data from old tables. Confirm success
BD-2238 Add voter info to accounts table (Part 2)
Echo update (fio.contracts Step 3)
FIP-1.
...
b
Update all nodes to fio.contracts Delta, ensure no forking occurs
Remove old records, ensure no forking occurs
Run JS regression tests.
Update all nodes to fio.contracts Bravo-c2, ensure no forking occurs
Run JS regression tests
Performance Tests? (Todd)
Run FIP-1.b migration confirmation scripts, confirm upgraded servers have correct, new data and non-upgraded servers do not
Run
migrtrx
to remove data from old tables. Confirm success