Remove leftover tiered remnants

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Fixed
    • Priority: Major - P3
    • WT12.0.0
    • Affects Version/s: None
    • Component/s: Tiered Storage
    • None
    • Storage Engines - Persistence
    • 272.631
    • SE Persistence backlog
    • None

      Problem

      After runtime, plugin, public API, and header types landed, leftover dead code and incomplete deprecation coverage remain: block-manager multi-handle fields that are always false, parse-stub help text that still describes live tiered storage, and test_tiered_deprecate.py missing session.create of a tiered: URI and truncate of a tiered: URI.

      Change

      Validate callers and data flow first. Do not delete address-cookie objectid or WT_TIERED_OBJECTID_NONE.

      Delete dead WT_BM multi-handle state: is_multi_handle, handle_array (pointer, allocated, lock, next), next_block, prev_block, max_flushed_objectid, unused switch_object vtable slots, and the never-taken close/sync/checkpoint branches. Drop matching asserts that only exist to say is_multi_handle is false. Confirm live restore and disagg do not use these fields; stop if they do.

      If otherwise unused: drop write-only flush_most_recent_secs and flush_most_recent_ts on WT_BTREE, stop applying WT_BTREE_NO_CHECKPOINT from leftover tiered_object, delete the .wtobj close in conn_dhandle.c, and fix the dhandle dump string that still names tiered work.

      Restyle remaining tiered_storage= / tiered_object help in dist/api_data.py to LSM-style wording (undoc=True, preserved to parse old metadata). Keep all eight subkeys. Run dist/s_all as required for generated config.

      Expand test_tiered_deprecate.py with session.create and truncate of a tiered: URI. Do not freeze ENOENT or success as the expected error.

      If table or file create still accepts tiered_storage.name set to something other than none, error the same way connection open/reconfig does.

      Keep parse stubs. Do not delete __wt_compact_check_eligibility. Do not change WT_DHANDLE_TYPE_NUM. Do not write upgrading.dox.

      Test

      python3 ../test/suite/run.py test_tiered_deprecate from build/. Smallest relevant Catch2/block tests if block-manager methods change. cd dist && ./s_fast.

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

              Created:
              Updated:
              Resolved: