|
|
@ -2480,8 +2480,8 @@ btr_attach_half_pages( |
|
|
|
} |
|
|
|
|
|
|
|
/* Get the previous and next pages of page */ |
|
|
|
prev_page_no = btr_page_get_prev(page, mtr); |
|
|
|
next_page_no = btr_page_get_next(page, mtr); |
|
|
|
prev_page_no = btr_page_get_prev(page); |
|
|
|
next_page_no = btr_page_get_next(page); |
|
|
|
|
|
|
|
const ulint space = block->page.id.space(); |
|
|
|
|
|
|
@ -2522,7 +2522,7 @@ btr_attach_half_pages( |
|
|
|
if (prev_block) { |
|
|
|
#ifdef UNIV_BTR_DEBUG
|
|
|
|
ut_a(page_is_comp(prev_block->frame) == page_is_comp(page)); |
|
|
|
ut_a(btr_page_get_next(prev_block->frame, mtr) |
|
|
|
ut_a(btr_page_get_next(prev_block->frame) |
|
|
|
== block->page.id.page_no()); |
|
|
|
#endif /* UNIV_BTR_DEBUG */
|
|
|
|
|
|
|
@ -2534,7 +2534,7 @@ btr_attach_half_pages( |
|
|
|
if (next_block) { |
|
|
|
#ifdef UNIV_BTR_DEBUG
|
|
|
|
ut_a(page_is_comp(next_block->frame) == page_is_comp(page)); |
|
|
|
ut_a(btr_page_get_prev(next_block->frame, mtr) |
|
|
|
ut_a(btr_page_get_prev(next_block->frame) |
|
|
|
== page_get_page_no(page)); |
|
|
|
#endif /* UNIV_BTR_DEBUG */
|
|
|
|
|
|
|
@ -2548,7 +2548,7 @@ btr_attach_half_pages( |
|
|
|
btr_page_set_prev(lower_page, lower_page_zip, |
|
|
|
prev_page_no, mtr); |
|
|
|
} else { |
|
|
|
ut_ad(btr_page_get_prev(lower_page, mtr) == prev_page_no); |
|
|
|
ut_ad(btr_page_get_prev(lower_page) == prev_page_no); |
|
|
|
} |
|
|
|
|
|
|
|
btr_page_set_next(lower_page, lower_page_zip, upper_page_no, mtr); |
|
|
@ -2559,7 +2559,7 @@ btr_attach_half_pages( |
|
|
|
btr_page_set_next(upper_page, upper_page_zip, |
|
|
|
next_page_no, mtr); |
|
|
|
} else { |
|
|
|
ut_ad(btr_page_get_next(upper_page, mtr) == next_page_no); |
|
|
|
ut_ad(btr_page_get_next(upper_page) == next_page_no); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
@ -2620,7 +2620,7 @@ btr_insert_into_right_sibling( |
|
|
|
{ |
|
|
|
buf_block_t* block = btr_cur_get_block(cursor); |
|
|
|
page_t* page = buf_block_get_frame(block); |
|
|
|
ulint next_page_no = btr_page_get_next(page, mtr); |
|
|
|
const uint32_t next_page_no = btr_page_get_next(page); |
|
|
|
|
|
|
|
ut_ad(mtr_memo_contains_flagged( |
|
|
|
mtr, dict_index_get_lock(cursor->index), |
|
|
@ -3161,8 +3161,8 @@ btr_level_list_remove_func( |
|
|
|
ut_ad(space == page_get_space_id(page)); |
|
|
|
/* Get the previous and next page numbers of page */ |
|
|
|
|
|
|
|
const ulint prev_page_no = btr_page_get_prev(page, mtr); |
|
|
|
const ulint next_page_no = btr_page_get_next(page, mtr); |
|
|
|
const uint32_t prev_page_no = btr_page_get_prev(page); |
|
|
|
const uint32_t next_page_no = btr_page_get_next(page); |
|
|
|
|
|
|
|
/* Update page links of the level */ |
|
|
|
|
|
|
@ -3175,8 +3175,8 @@ btr_level_list_remove_func( |
|
|
|
= buf_block_get_frame(prev_block); |
|
|
|
#ifdef UNIV_BTR_DEBUG
|
|
|
|
ut_a(page_is_comp(prev_page) == page_is_comp(page)); |
|
|
|
ut_a(btr_page_get_next(prev_page, mtr) |
|
|
|
== page_get_page_no(page)); |
|
|
|
ut_a(!memcmp(prev_page + FIL_PAGE_NEXT, page + FIL_PAGE_OFFSET, |
|
|
|
4)); |
|
|
|
#endif /* UNIV_BTR_DEBUG */
|
|
|
|
|
|
|
|
btr_page_set_next(prev_page, |
|
|
@ -3194,8 +3194,8 @@ btr_level_list_remove_func( |
|
|
|
= buf_block_get_frame(next_block); |
|
|
|
#ifdef UNIV_BTR_DEBUG
|
|
|
|
ut_a(page_is_comp(next_page) == page_is_comp(page)); |
|
|
|
ut_a(btr_page_get_prev(next_page, mtr) |
|
|
|
== page_get_page_no(page)); |
|
|
|
ut_a(!memcmp(next_page + FIL_PAGE_PREV, page + FIL_PAGE_OFFSET, |
|
|
|
4)); |
|
|
|
#endif /* UNIV_BTR_DEBUG */
|
|
|
|
|
|
|
|
btr_page_set_prev(next_page, |
|
|
@ -3527,8 +3527,8 @@ btr_compress( |
|
|
|
|
|
|
|
MONITOR_INC(MONITOR_INDEX_MERGE_ATTEMPTS); |
|
|
|
|
|
|
|
left_page_no = btr_page_get_prev(page, mtr); |
|
|
|
right_page_no = btr_page_get_next(page, mtr); |
|
|
|
left_page_no = btr_page_get_prev(page); |
|
|
|
right_page_no = btr_page_get_next(page); |
|
|
|
|
|
|
|
#ifdef UNIV_DEBUG
|
|
|
|
if (!page_is_leaf(page) && left_page_no == FIL_NULL) { |
|
|
@ -3602,10 +3602,10 @@ retry: |
|
|
|
|
|
|
|
#ifdef UNIV_BTR_DEBUG
|
|
|
|
if (is_left) { |
|
|
|
ut_a(btr_page_get_next(merge_page, mtr) |
|
|
|
ut_a(btr_page_get_next(merge_page) |
|
|
|
== block->page.id.page_no()); |
|
|
|
} else { |
|
|
|
ut_a(btr_page_get_prev(merge_page, mtr) |
|
|
|
ut_a(btr_page_get_prev(merge_page) |
|
|
|
== block->page.id.page_no()); |
|
|
|
} |
|
|
|
#endif /* UNIV_BTR_DEBUG */
|
|
|
@ -4126,8 +4126,8 @@ btr_discard_page( |
|
|
|
|
|
|
|
/* Decide the page which will inherit the locks */ |
|
|
|
|
|
|
|
left_page_no = btr_page_get_prev(buf_block_get_frame(block), mtr); |
|
|
|
right_page_no = btr_page_get_next(buf_block_get_frame(block), mtr); |
|
|
|
left_page_no = btr_page_get_prev(buf_block_get_frame(block)); |
|
|
|
right_page_no = btr_page_get_next(buf_block_get_frame(block)); |
|
|
|
|
|
|
|
const page_size_t page_size(dict_table_page_size(index->table)); |
|
|
|
ut_d(bool parent_is_different = false); |
|
|
@ -4138,7 +4138,7 @@ btr_discard_page( |
|
|
|
|
|
|
|
merge_page = buf_block_get_frame(merge_block); |
|
|
|
#ifdef UNIV_BTR_DEBUG
|
|
|
|
ut_a(btr_page_get_next(merge_page, mtr) |
|
|
|
ut_a(btr_page_get_next(merge_page) |
|
|
|
== block->page.id.page_no()); |
|
|
|
#endif /* UNIV_BTR_DEBUG */
|
|
|
|
ut_d(parent_is_different = |
|
|
@ -4154,7 +4154,7 @@ btr_discard_page( |
|
|
|
|
|
|
|
merge_page = buf_block_get_frame(merge_block); |
|
|
|
#ifdef UNIV_BTR_DEBUG
|
|
|
|
ut_a(btr_page_get_prev(merge_page, mtr) |
|
|
|
ut_a(btr_page_get_prev(merge_page) |
|
|
|
== block->page.id.page_no()); |
|
|
|
#endif /* UNIV_BTR_DEBUG */
|
|
|
|
ut_d(parent_is_different = page_rec_is_supremum( |
|
|
@ -4776,7 +4776,7 @@ btr_validate_level( |
|
|
|
does not use such scan for any of its DML or query |
|
|
|
operations */ |
|
|
|
if (dict_index_is_spatial(index)) { |
|
|
|
left_page_no = btr_page_get_prev(page, &mtr); |
|
|
|
left_page_no = btr_page_get_prev(page); |
|
|
|
|
|
|
|
while (left_page_no != FIL_NULL) { |
|
|
|
page_id_t left_page_id( |
|
|
@ -4793,7 +4793,7 @@ btr_validate_level( |
|
|
|
table_page_size, |
|
|
|
RW_SX_LATCH, index, &mtr); |
|
|
|
page = buf_block_get_frame(block); |
|
|
|
left_page_no = btr_page_get_prev(page, &mtr); |
|
|
|
left_page_no = btr_page_get_prev(page); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -4848,8 +4848,8 @@ loop: |
|
|
|
|
|
|
|
ut_a(btr_page_get_level(page, &mtr) == level); |
|
|
|
|
|
|
|
right_page_no = btr_page_get_next(page, &mtr); |
|
|
|
left_page_no = btr_page_get_prev(page, &mtr); |
|
|
|
right_page_no = btr_page_get_next(page); |
|
|
|
left_page_no = btr_page_get_prev(page); |
|
|
|
|
|
|
|
ut_a(!page_is_empty(page) |
|
|
|
|| (level == 0 |
|
|
@ -4866,9 +4866,7 @@ loop: |
|
|
|
|
|
|
|
right_page = buf_block_get_frame(right_block); |
|
|
|
|
|
|
|
if (btr_page_get_prev(right_page, &mtr) |
|
|
|
!= page_get_page_no(page)) { |
|
|
|
|
|
|
|
if (btr_page_get_prev(right_page) != page_get_page_no(page)) { |
|
|
|
btr_validate_report2(index, level, block, right_block); |
|
|
|
fputs("InnoDB: broken FIL_PAGE_NEXT" |
|
|
|
" or FIL_PAGE_PREV links\n", stderr); |
|
|
@ -4949,7 +4947,7 @@ loop: |
|
|
|
node_ptr = btr_cur_get_rec(&node_cur); |
|
|
|
|
|
|
|
parent_page_no = page_get_page_no(father_page); |
|
|
|
parent_right_page_no = btr_page_get_next(father_page, &mtr); |
|
|
|
parent_right_page_no = btr_page_get_next(father_page); |
|
|
|
rightmost_child = page_rec_is_supremum( |
|
|
|
page_rec_get_next(node_ptr)); |
|
|
|
|
|
|
@ -5090,7 +5088,7 @@ loop: |
|
|
|
} |
|
|
|
|
|
|
|
if (page_get_page_no(right_father_page) |
|
|
|
!= btr_page_get_next(father_page, &mtr)) { |
|
|
|
!= btr_page_get_next(father_page)) { |
|
|
|
|
|
|
|
ret = false; |
|
|
|
fputs("InnoDB: node pointer 3 to" |
|
|
|