InnoDB Plugin
1.0
|
Macros | |
#define | BTR_MAX_NODE_LEVEL 50 |
Functions | |
UNIV_INLINE buf_block_t * | btr_block_get_func (ulint space, ulint zip_size, ulint page_no, ulint mode, const char *file, ulint line, const dict_index_t *index, mtr_t *mtr) |
UNIV_INLINE void | btr_page_set_index_id (page_t *page, page_zip_des_t *page_zip, index_id_t id, mtr_t *mtr) |
UNIV_INLINE index_id_t | btr_page_get_index_id (const page_t *page) |
UNIV_INLINE ulint | btr_page_get_level_low (const page_t *page) |
UNIV_INLINE void | btr_page_set_level (page_t *page, page_zip_des_t *page_zip, ulint level, mtr_t *mtr) |
UNIV_INLINE ulint | btr_page_get_next (const page_t *page, mtr_t *mtr)) |
UNIV_INLINE void | btr_page_set_next (page_t *page, page_zip_des_t *page_zip, ulint next, mtr_t *mtr) |
UNIV_INLINE ulint | btr_page_get_prev (const page_t *page, mtr_t *mtr)) |
UNIV_INLINE void | btr_page_set_prev (page_t *page, page_zip_des_t *page_zip, ulint prev, mtr_t *mtr) |
UNIV_INLINE ulint | btr_node_ptr_get_child_page_no (const rec_t *rec, const ulint *offsets) |
UNIV_INLINE void | btr_leaf_page_release (buf_block_t *block, ulint latch_mode, mtr_t *mtr) |
The B-tree
Created 6/2/1994 Heikki Tuuri
#define BTR_MAX_NODE_LEVEL 50 |
Maximum B-tree page level (not really a hard limit). Used in debug assertions in btr_page_set_level and btr_page_get_level_low
UNIV_INLINE buf_block_t* btr_block_get_func | ( | ulint | space, |
ulint | zip_size, | ||
ulint | page_no, | ||
ulint | mode, | ||
const char * | file, | ||
ulint | line, | ||
const dict_index_t * | index, | ||
mtr_t * | mtr | ||
) |
Gets a buffer page and declares its latching order level.
space | in: space id |
zip_size | in: compressed page size in bytes or 0 for uncompressed pages |
page_no | in: page number |
mode | in: latch mode |
file | in: file name |
line | in: line where called |
index | in: index tree, may be NULL if it is not an insert buffer tree |
mtr | in/out: mtr |
UNIV_INLINE void btr_leaf_page_release | ( | buf_block_t * | block, |
ulint | latch_mode, | ||
mtr_t * | mtr | ||
) |
Releases the latches on a leaf page and bufferunfixes it.
block | in: buffer block |
latch_mode | in: BTR_SEARCH_LEAF or BTR_MODIFY_LEAF |
mtr | in: mtr |
UNIV_INLINE ulint btr_node_ptr_get_child_page_no | ( | const rec_t * | rec, |
const ulint * | offsets | ||
) |
Gets the child node file address in a node pointer. NOTE: the offsets array must contain all offsets for the record since we read the last field according to offsets and assume that it contains the child page number. In other words offsets must have been retrieved with rec_get_offsets(n_fields=ULINT_UNDEFINED).
rec | in: node pointer record |
offsets | in: array returned by rec_get_offsets() |
UNIV_INLINE index_id_t btr_page_get_index_id | ( | const page_t * | page | ) |
Gets the index id field of a page.
page | in: index page |
UNIV_INLINE ulint btr_page_get_level_low | ( | const page_t * | page | ) |
Gets the node level field in an index page.
page | in: index page |
Gets the next index page number.
< in: mini-transaction handle
page | in: index page |
mtr | in: mini-transaction handle |
Gets the previous index page number.
< in: mini-transaction handle
page | in: index page |
mtr | in: mini-transaction handle |
UNIV_INLINE void btr_page_set_index_id | ( | page_t * | page, |
page_zip_des_t * | page_zip, | ||
index_id_t | id, | ||
mtr_t * | mtr | ||
) |
Sets the index id field of a page.
page | in: page to be created |
page_zip | in: compressed page whose uncompressed part will be updated, or NULL |
id | in: index id |
mtr | in: mtr |
UNIV_INLINE void btr_page_set_level | ( | page_t * | page, |
page_zip_des_t * | page_zip, | ||
ulint | level, | ||
mtr_t * | mtr | ||
) |
Sets the node level field in an index page.
page | in: index page |
page_zip | in: compressed page whose uncompressed part will be updated, or NULL |
level | in: level, leaf level == 0 |
mtr | in: mini-transaction handle |
UNIV_INLINE void btr_page_set_next | ( | page_t * | page, |
page_zip_des_t * | page_zip, | ||
ulint | next, | ||
mtr_t * | mtr | ||
) |
Sets the next index page field.
page | in: index page |
page_zip | in: compressed page whose uncompressed part will be updated, or NULL |
next | in: next page number |
mtr | in: mini-transaction handle |
UNIV_INLINE void btr_page_set_prev | ( | page_t * | page, |
page_zip_des_t * | page_zip, | ||
ulint | prev, | ||
mtr_t * | mtr | ||
) |
Sets the previous index page field.
page | in: index page |
page_zip | in: compressed page whose uncompressed part will be updated, or NULL |
prev | in: previous page number |
mtr | in: mini-transaction handle |