MySQL 8.0.39
Source Code Documentation
ArchPageData Struct Reference

Page archiver in memory data. More...

#include <arch0arch.h>

Public Member Functions

 ArchPageData ()=default
 Constructor. More...
 
bool init ()
 Allocate buffer and initialize blocks. More...
 
void clean ()
 Delete blocks and buffer. More...
 
Arch_Blockget_block (Arch_Page_Pos *pos, Arch_Blk_Type type)
 Get the block for a position. More...
 
Arch_Blockget_partial_flush_block () const
 

Public Attributes

Arch_Block_Vec m_data_blocks {}
 Vector of data blocks. More...
 
Arch_Blockm_reset_block {nullptr}
 Reset block. More...
 
Arch_Blockm_partial_flush_block {nullptr}
 Temporary block used to copy active block for partial flush. More...
 
uint m_block_size {}
 Block size in bytes. More...
 
uint m_num_data_blocks {}
 Total number of blocks. More...
 
bytem_buffer {nullptr}
 In memory buffer. More...
 

Detailed Description

Page archiver in memory data.

Constructor & Destructor Documentation

◆ ArchPageData()

ArchPageData::ArchPageData ( )
default

Constructor.

Member Function Documentation

◆ clean()

void ArchPageData::clean ( )

Delete blocks and buffer.

◆ get_block()

Arch_Block * ArchPageData::get_block ( Arch_Page_Pos pos,
Arch_Blk_Type  type 
)

Get the block for a position.

Parameters
[in]posposition in page archive sys
[in]typeblock type
Returns
page archive in memory block

◆ get_partial_flush_block()

Arch_Block * ArchPageData::get_partial_flush_block ( ) const
inline
Returns
temporary block used to copy active block for partial flush.

◆ init()

bool ArchPageData::init ( void  )

Allocate buffer and initialize blocks.

Returns
true, if successful

Member Data Documentation

◆ m_block_size

uint ArchPageData::m_block_size {}

Block size in bytes.

◆ m_buffer

byte* ArchPageData::m_buffer {nullptr}

In memory buffer.

◆ m_data_blocks

Arch_Block_Vec ArchPageData::m_data_blocks {}

Vector of data blocks.

◆ m_num_data_blocks

uint ArchPageData::m_num_data_blocks {}

Total number of blocks.

◆ m_partial_flush_block

Arch_Block* ArchPageData::m_partial_flush_block {nullptr}

Temporary block used to copy active block for partial flush.

◆ m_reset_block

Arch_Block* ArchPageData::m_reset_block {nullptr}

Reset block.


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