Add compatibility tests for tiered storage removal

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Test Compatibility
    • None
    • Storage Engines - Persistence
    • 18.211
    • None
    • None

      Problem

      Cross-version coverage for tiered storage removal is not in the compatibility suite. In-tree tests cover leftover keys on the same binary. They do not clone 8.0/9.0 and swap binaries, which is the MongoDB upgrade/downgrade shape.

      The suite tests develop against older release branches. That is the right check, but it only works after the removal is on origin/develop. Adding the test before the merge would require harness changes so a test can use the checkout under test as newer.

      Change

      After WT-18587 lands on develop, add test/compatibility/suite/test_tiered_deprecate.py:* older = ['mongodb-8.0', 'mongodb-9.0']

      • newer = 'develop'
      • Do not change compatibility_test.py or SUITE_RELEASE_BRANCHES
      • Do not add a dedicated Evergreen task; compatibility-test-suite-daily discovers the file

      Cases:

      • Plain upgrade: older creates a normal table (legacy file_meta keys, no enabled storage source). Develop opens with config_base=false and reads the data. Keys remain in metadata.
      • Plain downgrade: develop creates without those keys. Older fills file_meta defaults, reads, alters, checkpoints, and reopens.
      • Enabled leftover: older dir_store + flush_tier. Develop with a default open (reads basecfg) returns ENOTSUP. Develop with config_base=false opens the connection; the leftover table URI is unsupported.

      Do not pin newer to this. Do not put this on SUITE_RELEASE_BRANCHES.

      Test

      The new file is the test. It runs on the daily compatibility suite (compatibility-tests variant). Confirm it fails against a pre-removal develop clone and passes after WT-18587.

      Depends on WT-18587. Same-binary leftover coverage is already on WT-18600.

            Assignee:
            Unassigned
            Reporter:
            Luke Pearson
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: