• Marko Mäkelä's avatar
    MDEV-22242 B-trees can become extremely skewed · 2f7d91bb
    Marko Mäkelä authored
    The test innodb.innodb_wl6326 that had been disabled in 10.4 due to
    MDEV-21535 is failing on 10.5 due to a different reason: the removal
    of the MLOG_COMP_END_COPY_CREATED operations in MDEV-12353
    commit 276f996a caused PAGE_LAST_INSERT
    to be set to something nonzero by the function page_copy_rec_list_end().
    
    This in turn would cause btr_page_get_split_rec_to_right() to behave
    differently: we would not attempt to split the page at all, but simply
    insert the new record into the new, empty, right leaf page.
    
    Even though the change reduced the sizes of some tables, it is better
    to aim for balanced trees.
    
    page_copy_rec_list_end(), PageBulk::finishPage():
    Preserve PAGE_LAST_INSERT, PAGE_N_DIRECTION, PAGE_DIRECTION.
    
    PageBulk::finish(): Move some common code from PageBulk::finishPage().
    2f7d91bb
innodb_wl6326.test 14.8 KB