Never add the 'default row' to the adaptive hash index
The adaptive hash index is built on record prefixes on leaf pages, containing at most index->n_uniq fields. Because the info_bits are not part of the hash value calculation, the adaptive hash index cannot distinguish the 'default row' record from a genuine user record (and it cannot distinguish whether a record is delete-marked). rec_fold(): Move the function to the only module where it is used, and assert that the record is on a leaf page and not the 'default row'. btr_search_drop_page_hash_index(), btr_search_build_page_hash_index(): Skip the 'default row'
Showing
Please register or sign in to comment