mirror of
https://github.com/MariaDB/server.git
synced 2025-12-24 11:21:21 +03:00
branches/zip: page_cur_insert_rec_low(): Replace page_zip_dir_rewrite()
with page_zip_dir_insert(). Pass page_zip to rec_set_n_owned_new() and page_dir_slot_set_n_owned(). page_zip_dir_insert(): New function. Shift the dense page directory and write the inserted record there.
This commit is contained in:
@@ -223,16 +223,6 @@ page_zip_write_trx_id_and_roll_ptr(
|
||||
dulint roll_ptr)/* in: roll_ptr */
|
||||
__attribute__((nonnull));
|
||||
|
||||
/**************************************************************************
|
||||
Populate the dense page directory on the compressed page
|
||||
from the sparse directory on the uncompressed row_format=compact page. */
|
||||
void
|
||||
page_zip_dir_rewrite(
|
||||
/*=================*/
|
||||
page_zip_des_t* page_zip,/* out: dense directory on compressed page */
|
||||
const page_t* page) /* in: uncompressed page */
|
||||
__attribute__((nonnull));
|
||||
|
||||
/**************************************************************************
|
||||
Write the "deleted" flag of a record on a compressed page. The flag must
|
||||
already have been written on the uncompressed page. */
|
||||
@@ -257,6 +247,20 @@ page_zip_rec_set_owned(
|
||||
ulint flag) /* in: the owned flag (nonzero=TRUE) */
|
||||
__attribute__((nonnull));
|
||||
|
||||
/**************************************************************************
|
||||
Insert a record to the dense page directory. */
|
||||
|
||||
void
|
||||
page_zip_dir_insert(
|
||||
/*================*/
|
||||
page_zip_des_t* page_zip,/* in/out: compressed page */
|
||||
const byte* prev_rec,/* in: record after which to insert */
|
||||
const byte* free_rec,/* in: record from which rec was
|
||||
allocated, or NULL */
|
||||
byte* rec, /* in: record to insert */
|
||||
dict_index_t* index, /* in: index of rec */
|
||||
const ulint* offsets);/* in: rec_get_offsets(rec) */
|
||||
|
||||
/**************************************************************************
|
||||
Shift the dense page directory and the array of BLOB pointers
|
||||
when a record is deleted. */
|
||||
|
||||
Reference in New Issue
Block a user