Details
-
Bug
-
Status: Open (View Workflow)
-
Major
-
Resolution: Unresolved
-
10.5, 10.6, 5.5(EOL), 10.0(EOL), 10.1(EOL), 10.2(EOL), 10.3(EOL), 10.4(EOL)
Description
As noted in MDEV-24653, the function btr_cur_pessimistic_delete() is neglecting the opportunity to shrink the index tree when only one sibling page would remain after btr_discard_page(). The MDEV-24653 test case creates a B-tree that consists of two pages: the root page pointing to only one child page, and a leaf page containing one hidden record.
And as noted in MDEV-14637, when fixing this, we would have to be very careful in order to avoid introducing deadlocks.
Attachments
Issue Links
- relates to
-
MDEV-24796 Assertion `page_has_next(block->frame) || rec_is_alter_metadata(p, *index) || block->page.id().page_no() != index->page' failed in btr_pcur_store_position and other related asserts
- Closed
-
MDEV-14637 Latching order violation during btr_cur_pessimistic_delete()
- Closed
-
MDEV-24653 Assertion `block->page.id().page_no() == index->page' failed in innobase_instant_try
- Closed