-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Checkpoints
-
None
-
Storage Engines - Persistence
-
SE Persistence backlog
-
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.