38 #ifndef UNIV_HOTBACKUP
41 #define BTR_PAGE_MAX_REC_SIZE (UNIV_PAGE_SIZE / 2 - 200)
52 #define BTR_MAX_LEVELS 100
77 #define BTR_INSERT 512
81 #define BTR_ESTIMATE 1024
86 #define BTR_IGNORE_SEC_UNIQUE 2048
90 #define BTR_DELETE_MARK 4096
94 #define BTR_DELETE 8192
96 #ifdef UNIV_BLOB_DEBUG
99 struct btr_blob_dbg_struct
101 unsigned blob_page_no:32;
102 unsigned ref_page_no:32;
103 unsigned ref_heap_no:16;
104 unsigned ref_field_no:10;
106 unsigned always_owner:1;
118 btr_blob_dbg_add_blob(
125 __attribute__((nonnull));
135 __attribute__((nonnull));
142 btr_blob_dbg_is_empty(
146 __attribute__((nonnull, warn_unused_result));
152 btr_blob_dbg_set_deleted_flag(
156 const ulint* offsets,
158 __attribute__((nonnull));
167 const ulint* offsets,
170 __attribute__((nonnull));
172 # define btr_blob_dbg_assert_empty(index, page_no) \
173 ut_a(btr_blob_dbg_is_empty(index, page_no))
175 # define btr_blob_dbg_add_blob(rec, field_no, page, index, ctx) ((void) 0)
176 # define btr_blob_dbg_set_deleted_flag(rec, index, offsets, del)((void) 0)
177 # define btr_blob_dbg_owner(rec, index, offsets, i, val) ((void) 0)
178 # define btr_blob_dbg_assert_empty(index, page_no) ((void) 0)
204 __attribute__((nonnull));
212 # define btr_block_get(space,zip_size,page_no,mode,mtr) \
213 btr_block_get_func(space,zip_size,page_no,mode,__FILE__,__LINE__,mtr)
221 # define btr_page_get(space,zip_size,page_no,mode,mtr) \
222 buf_block_get_frame(btr_block_get(space,zip_size,page_no,mode,mtr))
232 #ifndef UNIV_HOTBACKUP
274 btr_get_prev_user_rec(
285 btr_get_next_user_rec(
312 const ulint* offsets);
332 btr_free_but_not_root(
359 btr_root_raise_and_insert(
388 btr_page_get_split_rec_to_left(
400 btr_page_get_split_rec_to_right(
417 btr_page_split_and_insert(
430 btr_insert_on_non_leaf_level_func(
438 # define btr_insert_on_non_leaf_level(i,l,t,m) \
439 btr_insert_on_non_leaf_level_func(i,l,t,__FILE__,__LINE__,m)
445 btr_set_min_rec_mark(
449 #ifndef UNIV_HOTBACKUP
508 btr_parse_set_min_rec_mark(
520 btr_parse_page_reorganize(
527 #ifndef UNIV_HOTBACKUP
574 #ifdef UNIV_BTR_PRINT
598 btr_index_rec_validate(
602 ibool dump_on_error);
615 #define BTR_N_LEAF_PAGES 1
616 #define BTR_TOTAL_SIZE 2
620 #include "btr0btr.ic"