MySQL 8.4.2
Source Code Documentation
|
Doublewrite buffer context. More...
#include <arch0recv.h>
Public Member Functions | |
Arch_Dblwr_Ctx ()=default | |
Constructor: Initialize members. More... | |
~Arch_Dblwr_Ctx () | |
dberr_t | init (const char *path, const char *base_file, uint num_files, uint64_t file_size) |
Initialize the doublewrite buffer. More... | |
dberr_t | read_file () |
Read the doublewrite buffer file. More... | |
void | validate_and_fill_blocks (size_t num_files) |
Validate the blocks contained in the m_buf buffer and load only the valid buffers into m_blocks. More... | |
Arch_Dblwr_Blocks | blocks () |
Get doubewrite buffer blocks. More... | |
Arch_Dblwr_Ctx (Arch_Dblwr_Ctx const &)=delete | |
Disable copy construction. More... | |
Arch_Dblwr_Ctx & | operator= (Arch_Dblwr_Ctx const &)=delete |
Disable assignment. More... | |
Private Attributes | |
byte * | m_buf {nullptr} |
Buffer to hold the contents of the doublwrite buffer. More... | |
uint64_t | m_file_size {} |
Total file size of the file which holds the doublewrite buffer. More... | |
Arch_File_Ctx | m_file_ctx |
Doublewrite buffer file context. More... | |
Arch_Dblwr_Blocks | m_blocks {} |
List of doublewrite buffer blocks. More... | |
Doublewrite buffer context.
|
default |
Constructor: Initialize members.
|
inline |
|
delete |
Disable copy construction.
|
inline |
Get doubewrite buffer blocks.
dberr_t Arch_Dblwr_Ctx::init | ( | const char * | path, |
const char * | base_file, | ||
uint | num_files, | ||
uint64_t | file_size | ||
) |
Initialize the doublewrite buffer.
[in] | path | path to the file |
[in] | base_file | file name prefix |
[in] | num_files | initial number of files |
[in] | file_size | file size in bytes |
|
delete |
Disable assignment.
dberr_t Arch_Dblwr_Ctx::read_file | ( | ) |
Read the doublewrite buffer file.
void Arch_Dblwr_Ctx::validate_and_fill_blocks | ( | size_t | num_files | ) |
Validate the blocks contained in the m_buf buffer and load only the valid buffers into m_blocks.
[in] | num_files | number of files in the group information required to validate the blocks |
|
private |
List of doublewrite buffer blocks.
|
private |
Doublewrite buffer file context.
|
private |
Total file size of the file which holds the doublewrite buffer.