diff options
Diffstat (limited to 'innobase/page/page0cur.c')
-rw-r--r-- | innobase/page/page0cur.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/innobase/page/page0cur.c b/innobase/page/page0cur.c index 0b233b4dd72..dfe28fd40c4 100644 --- a/innobase/page/page0cur.c +++ b/innobase/page/page0cur.c @@ -403,6 +403,8 @@ page_cur_insert_rec_write_log( byte* log_ptr; ulint i; + ut_a(rec_size < UNIV_PAGE_SIZE); + log_ptr = mlog_open(mtr, 30 + MLOG_BUF_MARGIN); if (log_ptr == NULL) { @@ -491,6 +493,8 @@ page_cur_insert_rec_write_log( mlog_close(mtr, log_ptr); + ut_a(rec_size - i < UNIV_PAGE_SIZE); + if (rec_size - i >= MLOG_BUF_MARGIN) { mlog_catenate_string(mtr, ins_ptr, rec_size - i); } @@ -602,6 +606,9 @@ page_cur_parse_insert_rec( /* Build the inserted record to buf */ + ut_a(mismatch_index < UNIV_PAGE_SIZE); + ut_a(end_seg_len < UNIV_PAGE_SIZE); + ut_memcpy(buf, rec_get_start(cursor_rec), mismatch_index); ut_memcpy(buf + mismatch_index, ptr, end_seg_len); @@ -937,6 +944,8 @@ page_copy_rec_list_end_to_created_page( log_data_len = dyn_array_get_data_size(&(mtr->log)) - log_data_len; + ut_a(log_data_len < 100 * UNIV_PAGE_SIZE); + mach_write_to_4(log_ptr, log_data_len); rec_set_next_offs(insert_rec, PAGE_SUPREMUM); |