-
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.