Test upgrade/downgrade of disagg. address cookies

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Block Manager, Test Python
    • None
    • Storage Engines
    • None
    • None

      We should add at least a basic test/suite test, which ensures that we can indeed safely upgrade/downgrade the address and checkpoint cookies in disagg.

      Since we are currently still at version 0, and if possible, we would prefer to not waste version numbers for testing alone, perhaps one way we could write this test would be as follows:

      • Add a new debug config parameter to WT_CONNECTION that makes the block manager pretend its version is one higher than the currently supported version (i.e., WT_BLOCK_DISAGG_ADDR_VERSION + 1).
      • At that higher version, __wti_block_disagg_addr_pack would add additional fields and flags to the address cookie, that current version would not know about.
      • Ensure that we can easily upgrade/downgrade between the two versions, where the old version would just ignore unknown fields.

      We should also add two more variations of this test:

      • Add a similar test, where we would test the ability to add "unknown" optional fields to the address cookie, without increasing the version number.
      • Add a test where we would increase both the version number and the compatibility version number (version_min) to ensure that an older version would fail to decode the address cookie.

            Assignee:
            [DO NOT USE] Backlog - Storage Engines Team
            Reporter:
            Peter Macko
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: