summaryrefslogtreecommitdiff
path: root/mysql-test/main/ctype_ldml-master.opt
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2022-06-08 14:53:24 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2022-06-08 14:53:24 +0300
commit77b3959b5c1528f33ada7aa4445cccf5b5e197b0 (patch)
treeb69c132a2bda0aba7bd96edaf107ab87a21d1c2b /mysql-test/main/ctype_ldml-master.opt
parent892c426371b4be558d32fdeba7d1d56f46b40f2b (diff)
downloadmariadb-git-77b3959b5c1528f33ada7aa4445cccf5b5e197b0.tar.gz
MDEV-28457 Crash in page_dir_find_owner_slot()
A prominent remaining source of crashes on corrupted index pages is page directory corruption. A frequent caller of page_dir_find_owner_slot() is page_rec_get_prev(). Some of those calls can be replaced with simpler logic that is less prone to fail. page_dir_find_owner_slot(), page_rec_get_prev(), page_rec_get_prev_const(), btr_pcur_move_to_prev(), btr_pcur_move_to_prev_on_page(), btr_cur_upd_rec_sys(), page_delete_rec_list_end(), rtr_page_copy_rec_list_end_no_locks(), rtr_page_copy_rec_list_start_no_locks(): Return an error code on failure. fil_space_t::io(), buf_page_get_low(): Use DB_CORRUPTION for out-of-bounds page reads. PageBulk::getSplitRec(), PageBulk::copyOut(): Simplify the code. btr_validate_level(): Prevent some more CHECK TABLE crashes on corrupted pages. btr_block_get(), btr_pcur_move_to_next_page(): Implement some checks that were previously only part of IndexPurge::next(). IndexPurge::next(): Use btr_pcur_move_to_next_page().
Diffstat (limited to 'mysql-test/main/ctype_ldml-master.opt')
0 files changed, 0 insertions, 0 deletions