diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2019-09-18 10:53:31 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2019-09-18 10:53:31 +0300 |
commit | 71e856e152c303d1beaea240a85a00fa0d447de0 (patch) | |
tree | c3b538ba33d8448a759fa65e1b715e67a6ef9dfc /storage/innobase/include/page0page.ic | |
parent | 2eeac537151058d0a695026766389ef1f867dc79 (diff) | |
download | mariadb-git-71e856e152c303d1beaea240a85a00fa0d447de0.tar.gz |
MDEV-12353 preparation: Clean up page directory operations
page_mem_free(): Define in the same file with the only caller
page_cur_delete_rec().
page_dir_slot_set_rec(): Add const qualifier to a parameter.
page_dir_delete_slot(): Merge with the only caller page_dir_balance_slot().
page_dir_add_slot(): Merge with the only caller page_dir_split_slot().
page_dir_split_slot(), page_dir_balance_slot(): Define in the
same compilation unit with the callers, and simplify the code.
Diffstat (limited to 'storage/innobase/include/page0page.ic')
-rw-r--r-- | storage/innobase/include/page0page.ic | 46 |
1 files changed, 2 insertions, 44 deletions
diff --git a/storage/innobase/include/page0page.ic b/storage/innobase/include/page0page.ic index 5ab50b7bb8e..2359e61aad0 100644 --- a/storage/innobase/include/page0page.ic +++ b/storage/innobase/include/page0page.ic @@ -559,8 +559,8 @@ UNIV_INLINE void page_dir_slot_set_rec( /*==================*/ - page_dir_slot_t* slot, /*!< in: directory slot */ - rec_t* rec) /*!< in: record on the page */ + page_dir_slot_t*slot, /*!< in: directory slot */ + const rec_t* rec) /*!< in: record on the page */ { ut_ad(page_rec_check(rec)); @@ -1001,48 +1001,6 @@ page_get_max_insert_size_after_reorganize( return(free_space - occupied); } -/************************************************************//** -Puts a record to free list. */ -UNIV_INLINE -void -page_mem_free( -/*==========*/ - page_t* page, /*!< in/out: index page */ - page_zip_des_t* page_zip, /*!< in/out: compressed page, - or NULL */ - rec_t* rec, /*!< in: pointer to the - (origin of) record */ - const dict_index_t* index, /*!< in: index of rec */ - const ulint* offsets) /*!< in: array returned by - rec_get_offsets() */ -{ - rec_t* free; - ulint garbage; - - ut_ad(rec_offs_validate(rec, index, offsets)); - free = page_header_get_ptr(page, PAGE_FREE); - - if (srv_immediate_scrub_data_uncompressed) { - /* scrub record */ - memset(rec, 0, rec_offs_data_size(offsets)); - } - - page_rec_set_next(rec, free); - page_header_set_ptr(page, page_zip, PAGE_FREE, rec); - - garbage = page_header_get_field(page, PAGE_GARBAGE); - - page_header_set_field(page, page_zip, PAGE_GARBAGE, - garbage + rec_offs_size(offsets)); - - if (page_zip) { - page_zip_dir_delete(page_zip, rec, index, offsets, free); - } else { - page_header_set_field(page, page_zip, PAGE_N_RECS, - ulint(page_get_n_recs(page)) - 1); - } -} - /** Read the PAGE_DIRECTION field from a byte. @param[in] ptr pointer to PAGE_DIRECTION_B @return the value of the PAGE_DIRECTION field */ |