mirror of
https://github.com/MariaDB/server.git
synced 2025-01-22 14:54:20 +01:00
branches/zip: Introduce UNIV_ZIP_COPY for invoking page_zip_copy_recs()
more often in B-tree operations.
This commit is contained in:
parent
05c33d6d3f
commit
f644f6af5e
2 changed files with 22 additions and 4 deletions
|
@ -1177,7 +1177,11 @@ btr_root_raise_and_insert(
|
|||
|
||||
/* Copy the records from root to the new page one by one. */
|
||||
|
||||
if (UNIV_UNLIKELY
|
||||
if (0
|
||||
#ifdef UNIV_ZIP_COPY
|
||||
|| new_page_zip
|
||||
#endif /* UNIV_ZIP_COPY */
|
||||
|| UNIV_UNLIKELY
|
||||
(!page_copy_rec_list_end(new_block, root_block,
|
||||
page_get_infimum_rec(root),
|
||||
index, mtr))) {
|
||||
|
@ -1947,7 +1951,11 @@ insert_right:
|
|||
if (direction == FSP_DOWN) {
|
||||
/* fputs("Split left\n", stderr); */
|
||||
|
||||
if (UNIV_UNLIKELY
|
||||
if (0
|
||||
#ifdef UNIV_ZIP_COPY
|
||||
|| page_zip
|
||||
#endif /* UNIV_ZIP_COPY */
|
||||
|| UNIV_UNLIKELY
|
||||
(!page_move_rec_list_start(new_block, block, move_limit,
|
||||
cursor->index, mtr))) {
|
||||
/* For some reason, compressing new_page failed,
|
||||
|
@ -1986,7 +1994,11 @@ insert_right:
|
|||
} else {
|
||||
/* fputs("Split right\n", stderr); */
|
||||
|
||||
if (UNIV_UNLIKELY
|
||||
if (0
|
||||
#ifdef UNIV_ZIP_COPY
|
||||
|| page_zip
|
||||
#endif /* UNIV_ZIP_COPY */
|
||||
|| UNIV_UNLIKELY
|
||||
(!page_move_rec_list_end(new_block, block, move_limit,
|
||||
cursor->index, mtr))) {
|
||||
/* For some reason, compressing new_page failed,
|
||||
|
@ -2359,7 +2371,11 @@ btr_lift_page_up(
|
|||
btr_page_set_level(father_page, father_page_zip, page_level, mtr);
|
||||
|
||||
/* Copy the records to the father page one by one. */
|
||||
if (UNIV_UNLIKELY
|
||||
if (0
|
||||
#ifdef UNIV_ZIP_COPY
|
||||
|| father_page_zip
|
||||
#endif /* UNIV_ZIP_COPY */
|
||||
|| UNIV_UNLIKELY
|
||||
(!page_copy_rec_list_end(father_block, block,
|
||||
page_get_infimum_rec(page),
|
||||
index, mtr))) {
|
||||
|
|
|
@ -158,6 +158,8 @@ operations (very slow); also UNIV_DEBUG must be defined */
|
|||
printing B-trees */
|
||||
#define UNIV_ZIP_DEBUG /* extensive consistency checks
|
||||
for compressed pages */
|
||||
#define UNIV_ZIP_COPY /* call page_zip_copy_recs()
|
||||
more often */
|
||||
#endif
|
||||
|
||||
#define UNIV_BTR_DEBUG /* check B-tree links */
|
||||
|
|
Loading…
Add table
Reference in a new issue