InnoDB Plugin
1.0
|
Go to the source code of this file.
Data Structures | |
struct | page_zip_des_t |
struct | page_zip_stat_t |
Macros | |
#define | page_t ib_page_t |
#define | PAGE_ZIP_SSIZE_BITS 3 |
#define | PAGE_ZIP_SSIZE_MAX (UNIV_ZIP_SIZE_SHIFT_MAX - UNIV_ZIP_SIZE_SHIFT_MIN + 1) |
Typedefs | |
typedef byte | page_t |
typedef byte | page_zip_t |
typedef map< index_id_t, page_zip_stat_t > | page_zip_stat_per_index_t |
Functions | |
UNIV_INTERN void | page_zip_rec_set_deleted (page_zip_des_t *page_zip, const byte *rec, ulint flag)) |
UNIV_INTERN void | page_zip_rec_set_owned (page_zip_des_t *page_zip, const byte *rec, ulint flag)) |
UNIV_INTERN void | page_zip_dir_delete (page_zip_des_t *page_zip, byte *rec, dict_index_t *index, const ulint *offsets, const byte *free))) |
UNIV_INTERN void | page_zip_dir_add_slot (page_zip_des_t *page_zip, ulint is_clustered)) |
Variables | |
page_zip_stat_t | page_zip_stat [PAGE_ZIP_SSIZE_MAX] |
page_zip_stat_per_index_t | page_zip_stat_per_index |
ib_mutex_t | page_zip_stat_per_index_mutex |
Index page routines
Created 2/2/1994 Heikki Tuuri
#define page_t ib_page_t |
Eliminates a name collision on HP-UX
#define PAGE_ZIP_SSIZE_BITS 3 |
Number of bits needed for representing different compressed page sizes
#define PAGE_ZIP_SSIZE_MAX (UNIV_ZIP_SIZE_SHIFT_MAX - UNIV_ZIP_SIZE_SHIFT_MIN + 1) |
Maximum compressed page shift size
typedef byte page_t |
Type of the index page
typedef map<index_id_t, page_zip_stat_t> page_zip_stat_per_index_t |
Compression statistics types
typedef byte page_zip_t |
Compressed index page
UNIV_INTERN void page_zip_dir_add_slot | ( | page_zip_des_t * | page_zip, |
ulint | is_clustered | ||
) |
Add a slot to the dense page directory.
page_zip | in/out: compressed page |
is_clustered | in: nonzero for clustered index, zero for others |
UNIV_INTERN void page_zip_dir_delete | ( | page_zip_des_t * | page_zip, |
byte * | rec, | ||
dict_index_t * | index, | ||
const ulint * | offsets, | ||
const byte * | free | ||
) |
Shift the dense page directory when a record is deleted.
page_zip | in/out: compressed page |
rec | in: deleted record |
index | in: index of rec |
offsets | in: rec_get_offsets(rec) |
free | in: previous start of the free list |
UNIV_INTERN void page_zip_rec_set_deleted | ( | page_zip_des_t * | page_zip, |
const byte * | rec, | ||
ulint | flag | ||
) |
Write the "deleted" flag of a record on a compressed page. The flag must already have been written on the uncompressed page.
page_zip | in/out: compressed page |
rec | in: record on the uncompressed page |
flag | in: the deleted flag (nonzero=TRUE) |
UNIV_INTERN void page_zip_rec_set_owned | ( | page_zip_des_t * | page_zip, |
const byte * | rec, | ||
ulint | flag | ||
) |
Write the "owned" flag of a record on a compressed page. The n_owned field must already have been written on the uncompressed page.
page_zip | in/out: compressed page |
rec | in: record on the uncompressed page |
flag | in: the owned flag (nonzero=TRUE) |
page_zip_stat_t page_zip_stat[PAGE_ZIP_SSIZE_MAX] |
Statistics on compression, indexed by page_zip_des_t::ssize - 1
page_zip_stat_per_index_t page_zip_stat_per_index |
Statistics on compression, indexed by dict_index_t::id