Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-8554

Automated testing for upgrade from 4.4 releases

    • 8
    • Storage - Ra 2022-01-10

      This ticket tracks the automation for the upgrade from the previous 4.4 releases (4.4.0 - 4.4.10) to the latest 4.4 and 5.0 releases.

      We need to cover the following scenarios:

      • Upgrade from an unclean 4.4.0 - 4.4.6 (both inclusive) should fail
      • Upgrade from a clean 4.4.0 - 4.4.6 (both inclusive) should pass
      • Upgrade from 4.4.7 - 4.4.10, clean or unclean should pass

      Upgrade here means using test/checkpoint as a driving program to do two critical steps:

      • Open the database files successfully (which would test doing a rollback-to-stable only in those cases where we can without corruption). Open itself should fail for unclean 4.4.0 - 4.4.6
      • For the databases that open successfully verify that the tables created by test/checkpoint all have the same content as per the last checkpoint.

      The following test/checkpoint invocation will take care of the above tasks:
      test/checkpoint -t r -D -v -h <dir>

      Here is a pseudo-code for what automation is needed:

      for ver = (latest 4.4 , latest 5.0) {
         git checkout ver
         build WT
         for each tarred database in the repository {
             download the tar file and untar
             ret = test/checkpoint -t r -D -v -h <db-dir>
             If the database is from version 4.4.0 - 4.4.6 and from an unclean shutdown:
                 ASSERT(ret == failure)
             else:
                 ASSERT(ret == Success)
          }
      }
      

      Click here for the link for the repository.

            Assignee:
            alexey.anisimov@mongodb.com Alexey Anisimov (Inactive)
            Reporter:
            sulabh.mahajan@mongodb.com Sulabh Mahajan
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: