Go to the source code of this file.
Classes | |
| struct | page_zip_des_struct |
| struct | page_zip_stat_struct |
Macros | |
| #define | page0types_h |
| #define | page_t ib_page_t |
| #define | PAGE_ZIP_SSIZE_BITS 3 |
| #define | PAGE_ZIP_MIN_SIZE_SHIFT 10 |
| #define | PAGE_ZIP_MIN_SIZE (1 << PAGE_ZIP_MIN_SIZE_SHIFT) |
| #define | PAGE_ZIP_NUM_SSIZE (UNIV_PAGE_SIZE_SHIFT - PAGE_ZIP_MIN_SIZE_SHIFT + 2) |
| #define | PAGE_ZIP_NUM_SSIZE_MAX (UNIV_PAGE_SIZE_SHIFT_MAX - PAGE_ZIP_MIN_SIZE_SHIFT + 2) |
Typedefs | |
| typedef byte | page_t |
| typedef struct page_cur_struct | page_cur_t |
| typedef byte | page_zip_t |
| typedef struct page_zip_des_struct | page_zip_des_t |
| typedef struct page_zip_stat_struct | page_zip_stat_t |
Functions | |
| UNIV_INTERN void | page_zip_rec_set_deleted (page_zip_des_t *page_zip, const byte *rec, ulint flag) __attribute__((nonnull)) |
| UNIV_INTERN void | page_zip_rec_set_owned (page_zip_des_t *page_zip, const byte *rec, ulint flag) __attribute__((nonnull)) |
| 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) __attribute__((nonnull(1 |
| UNIV_INTERN void UNIV_INTERN void | page_zip_dir_add_slot (page_zip_des_t *page_zip, ulint is_clustered) __attribute__((nonnull)) |
Variables | |
| page_zip_stat_t | page_zip_stat [PAGE_ZIP_NUM_SSIZE_MAX-1] |
| #define page_t ib_page_t |
Eliminates a name collision on HP-UX
Definition at line 35 of file page0types.h.
| #define PAGE_ZIP_MIN_SIZE (1 << PAGE_ZIP_MIN_SIZE_SHIFT) |
Smallest compressed page size
Definition at line 56 of file page0types.h.
Referenced by fil_create_new_single_table_tablespace().
| #define PAGE_ZIP_MIN_SIZE_SHIFT 10 |
log2 of smallest compressed page size
Definition at line 54 of file page0types.h.
| #define PAGE_ZIP_NUM_SSIZE (UNIV_PAGE_SIZE_SHIFT - PAGE_ZIP_MIN_SIZE_SHIFT + 2) |
Number of supported compressed page sizes
Definition at line 59 of file page0types.h.
| #define PAGE_ZIP_SSIZE_BITS 3 |
Number of bits needed for representing different compressed page sizes
Definition at line 51 of file page0types.h.
| typedef struct page_cur_struct page_cur_t |
Index page cursor
Definition at line 39 of file page0types.h.
| typedef byte page_t |
Type of the index page
Definition at line 37 of file page0types.h.
| typedef struct page_zip_des_struct page_zip_des_t |
Compressed page descriptor
Definition at line 44 of file page0types.h.
| typedef struct page_zip_stat_struct page_zip_stat_t |
Compression statistics
Definition at line 100 of file page0types.h.
| typedef byte page_zip_t |
Compressed index page
Definition at line 42 of file page0types.h.
| UNIV_INTERN void 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 |
Definition at line 4250 of file page0zip.cc.
References BTR_EXTERN_FIELD_REF_SIZE, page_zip_des_struct::data, page_zip_des_struct::n_blobs, page_dir_get_n_heap(), page_is_comp(), page_is_leaf(), page_zip_dir_add_slot(), page_zip_get_size(), and ut_ad.
Referenced by page_cur_insert_rec_zip(), and page_zip_dir_add_slot().
| 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) |
Definition at line 4030 of file page0zip.cc.
References page_zip_des_struct::data, page_align(), page_offset(), page_zip_get_size(), page_zip_rec_set_deleted(), and ut_a.
Referenced by page_zip_rec_set_deleted().
| 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) |
Definition at line 4054 of file page0zip.cc.
References page_zip_des_struct::data, page_offset(), page_zip_get_size(), page_zip_rec_set_owned(), and ut_a.
Referenced by page_zip_rec_set_owned().
| page_zip_stat_t page_zip_stat[PAGE_ZIP_NUM_SSIZE_MAX-1] |
Statistics on compression, indexed by page_zip_des_struct::ssize - 1
Statistics on compression, indexed by page_zip_des_t::ssize - 1
Definition at line 52 of file page0zip.cc.