We did manual testing for upgrade/downgrade in
WT-5653. However, manual testing is error prone and requires significant time investment. We believe these scenarios need to be tested through our existing automated/Evergreen testing platform.
The aim of this ticket is to build a mechanism to automate testing of different upgrade/downgrade scenarios. Following is a non-exhaustive list of scenarios we would like to be part of automated tested :
- Test scenarios where we upgrade our v4.2 database to v4.4 -> downgrade to v4.2 -> upgrade to v4.4.
- Perform some write operations in a v4.4 database that involve timestamps and transactions. The objective here is have some data present in both history store and data store. Downgrade this database to v4.2 and verify that data present in datastore has been preserved across downgrade.
- Tests to assure that files WiredTigerLAS.wt and WiredTigerHS.wt are managed properly across v4.2/4.4 downgrade and upgrade (this should be done once there is a resolution for
A good starting point is to review the existing compatibility verification script and identify how we can improve the functionality to address the missing test scenarios.