In checkpoint_tree fix layering violation when freeing disagg ckpt root pages

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Checkpoints
    • None

      In __checkpoint_tree function, disaggregated checkpoint root page discards call bm->free directly, bypassing the btree layer, and violating layering.

      Checkpoint code should not call the block manager functions directly. The existing helper __wt_btree_block_free gives us the correct abstraction, but hardcodes false for the final boolean argument (the "root double discard" flag), making it not suitable as is.

      Definition of done:

      • Resolve by adding a new parameter to to __wt_btree_block_free that accepts the root discard boolean, then replace the direct call in with the new helper. Or provide an alternative solution that does not violate layering.

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

              Created:
              Updated: