MySQL 8.0.40
Source Code Documentation
|
File segment of a double write file. More...
Public Member Functions | |
Segment (dblwr::File &file, page_no_t start, uint32_t n_pages) | |
Constructor. More... | |
Segment (dblwr::File &file, uint32_t phy_size, page_no_t start, uint32_t n_pages) | |
Constructor. More... | |
virtual | ~Segment ()=default |
Destructor. More... | |
void | write (const void *ptr, uint32_t len) noexcept |
Write to the segment. More... | |
void | flush () noexcept |
Flush the segment to disk. More... | |
Segment (Segment &&)=delete | |
Segment (const Segment &)=delete | |
Segment & | operator= (Segment &&)=delete |
Segment & | operator= (const Segment &)=delete |
Public Attributes | |
dblwr::File & | m_file |
File that owns the segment. More... | |
uint32_t | m_phy_size {} |
Physical page size of each entry/Segment. More... | |
os_offset_t | m_start {} |
Physical offset in the file for the segment. More... | |
os_offset_t | m_end {} |
Physical offset up to which this segment is responsible for. More... | |
File segment of a double write file.
|
inline |
Constructor.
[in] | file | File that owns the segment. |
[in] | start | Offset (page number) of segment in the file. |
[in] | n_pages | Number of pages in the segment. |
|
inline |
Constructor.
[in] | file | File that owns the segment. |
[in] | phy_size | Size of an entry in segment |
[in] | start | Offset (page number) of segment in the file. |
[in] | n_pages | Number of pages in the segment. |
|
virtualdefault |
Destructor.
|
delete |
|
delete |
|
inlinenoexcept |
Flush the segment to disk.
|
inlinenoexcept |
Write to the segment.
[in] | ptr | Start writing from here. |
[in] | len | Number of bytes to write. |
os_offset_t Segment::m_end {} |
Physical offset up to which this segment is responsible for.
dblwr::File& Segment::m_file |
File that owns the segment.
uint32_t Segment::m_phy_size {} |
Physical page size of each entry/Segment.
os_offset_t Segment::m_start {} |
Physical offset in the file for the segment.