MySQL 8.4.0
Source Code Documentation
lob::z_index_page_t Struct Reference

An index page containing an array of z_index_entry_t objects. More...

#include <lob0impl.h>

Public Member Functions

 z_index_page_t (mtr_t *mtr)
 Constructor. More...
 
 z_index_page_t (buf_block_t *block, mtr_t *mtr, dict_index_t *index)
 Constructor. More...
 
 z_index_page_t (mtr_t *mtr, dict_index_t *index)
 Constructor. More...
 
 z_index_page_t (buf_block_t *block)
 Constructor. More...
 
 z_index_page_t (buf_block_t *block, dict_index_t *index)
 Constructor. More...
 
void set_space_id_no_redo (space_id_t space_id)
 Write the space identifier to the page header, without generating redo log records. More...
 
void set_page_type (mtr_t *mtr)
 Set the correct page type. More...
 
void set_version_0 ()
 
void set_next_page_no (page_no_t page_no)
 Set the next page number. More...
 
page_no_t get_page_no () const
 Get the page number. More...
 
page_no_t get_next_page_no () const
 Get the next page number. More...
 
buf_block_talloc (z_first_page_t &first, bool bulk)
 Allocate an ZLOB index page. More...
 
void import (trx_id_t trx_id)
 
buf_block_tload_x (page_no_t page_no)
 Load the given compressed LOB index page. More...
 
void dealloc ()
 
void init (flst_base_node_t *free_lst, mtr_t *mtr)
 
ulint payload () const
 
ulint get_n_index_entries () const
 
byteframe () const
 

Public Attributes

buf_block_tm_block
 The buffer block of the compressed LOB index page. More...
 
mtr_tm_mtr
 The mini-transaction context. More...
 
dict_index_tm_index
 The index to which the LOB belongs. More...
 

Static Public Attributes

static const ulint OFFSET_VERSION = FIL_PAGE_DATA
 Version information. More...
 
static const ulint LOB_PAGE_DATA = OFFSET_VERSION + 1
 

Detailed Description

An index page containing an array of z_index_entry_t objects.

Constructor & Destructor Documentation

◆ z_index_page_t() [1/5]

lob::z_index_page_t::z_index_page_t ( mtr_t mtr)
inlineexplicit

Constructor.

Parameters
[in]mtrmini-transaction context.

◆ z_index_page_t() [2/5]

lob::z_index_page_t::z_index_page_t ( buf_block_t block,
mtr_t mtr,
dict_index_t index 
)
inline

Constructor.

Parameters
[in]blockthe buffer block.
[in]mtrmini-transaction context.
[in]indexthe index to which the LOB belongs.

◆ z_index_page_t() [3/5]

lob::z_index_page_t::z_index_page_t ( mtr_t mtr,
dict_index_t index 
)
inline

Constructor.

Parameters
[in]mtrmini-transaction context.
[in]indexthe index to which the LOB belongs.

◆ z_index_page_t() [4/5]

lob::z_index_page_t::z_index_page_t ( buf_block_t block)
inlineexplicit

Constructor.

Parameters
[in]blockthe buffer block.

◆ z_index_page_t() [5/5]

lob::z_index_page_t::z_index_page_t ( buf_block_t block,
dict_index_t index 
)
inline

Constructor.

Parameters
[in]blockthe buffer block.
[in]indexthe index to which the LOB belongs.

Member Function Documentation

◆ alloc()

buf_block_t * lob::z_index_page_t::alloc ( z_first_page_t first,
bool  bulk 
)

Allocate an ZLOB index page.

Returns
the buffer block of the allocated zlob index page.

◆ dealloc()

void lob::z_index_page_t::dealloc ( )
inline

◆ frame()

byte * lob::z_index_page_t::frame ( ) const
inline

◆ get_n_index_entries()

ulint lob::z_index_page_t::get_n_index_entries ( ) const

◆ get_next_page_no()

page_no_t lob::z_index_page_t::get_next_page_no ( ) const
inline

Get the next page number.

◆ get_page_no()

page_no_t lob::z_index_page_t::get_page_no ( ) const
inline

Get the page number.

◆ import()

void lob::z_index_page_t::import ( trx_id_t  trx_id)

◆ init()

void lob::z_index_page_t::init ( flst_base_node_t free_lst,
mtr_t mtr 
)

◆ load_x()

buf_block_t * lob::z_index_page_t::load_x ( page_no_t  page_no)
inline

Load the given compressed LOB index page.

Parameters
[in]page_nocompressed LOB index page number.
Returns
the buffer block of the given page number.

◆ payload()

ulint lob::z_index_page_t::payload ( ) const
inline

◆ set_next_page_no()

void lob::z_index_page_t::set_next_page_no ( page_no_t  page_no)
inline

Set the next page number.

◆ set_page_type()

void lob::z_index_page_t::set_page_type ( mtr_t mtr)
inline

Set the correct page type.

◆ set_space_id_no_redo()

void lob::z_index_page_t::set_space_id_no_redo ( space_id_t  space_id)
inline

Write the space identifier to the page header, without generating redo log records.

Parameters
[in]space_idthe space identifier.

◆ set_version_0()

void lob::z_index_page_t::set_version_0 ( )
inline

Member Data Documentation

◆ LOB_PAGE_DATA

const ulint lob::z_index_page_t::LOB_PAGE_DATA = OFFSET_VERSION + 1
static

◆ m_block

buf_block_t* lob::z_index_page_t::m_block

The buffer block of the compressed LOB index page.

◆ m_index

dict_index_t* lob::z_index_page_t::m_index

The index to which the LOB belongs.

◆ m_mtr

mtr_t* lob::z_index_page_t::m_mtr

The mini-transaction context.

◆ OFFSET_VERSION

const ulint lob::z_index_page_t::OFFSET_VERSION = FIL_PAGE_DATA
static

Version information.

One byte.


The documentation for this struct was generated from the following files: