MySQL 8.0.40
Source Code Documentation
|
The node of page list. More...
#include <lob0impl.h>
Public Member Functions | |
plist_node_t (mtr_t *mtr) | |
Constructor. More... | |
plist_node_t () | |
Default constructor. More... | |
plist_node_t (mtr_t *mtr, byte *frame) | |
Constructor. More... | |
plist_node_t (byte *frame, byte *node) | |
Constructor. More... | |
plist_node_t (byte *frame, byte *node, mtr_t *mtr) | |
Constructor. More... | |
plist_node_t (const plist_node_t &other)=default | |
Copy constructor. More... | |
plist_node_t & | operator= (const plist_node_t &)=default |
bool | is_before (const plist_node_t &node) const |
Check if the current node is before the given node in the page (w.r.t the offset). More... | |
void | init () |
Initialize the current page list node. More... | |
void | set_prev (paddr_t addr) |
Set the offset of the previous node. More... | |
void | set_prev_node (plist_node_t &prev) |
Set the previous page list node. More... | |
void | set_next (paddr_t addr) |
Set the offset of the next node. More... | |
void | set_next_node (const plist_node_t &next) |
Set the next page list node. More... | |
paddr_t | get_prev () const |
Get the offset of the previous page list node. More... | |
paddr_t | get_next () const |
Get the offset of the next page list node. More... | |
plist_node_t | get_next_node () const |
Get the next page list node. More... | |
plist_node_t | get_prev_node () const |
Get the previous page list node. More... | |
paddr_t | addr () const |
Obtain the offset of the page list node within the given page frame. More... | |
byte * | ptr () const |
Obtain the memory location of the page list node. More... | |
bool | is_null () const |
Check if the given page list node is null. More... | |
std::ostream & | print (std::ostream &out) const |
Print the page list node into the given output stream. More... | |
void | set_frame (byte *frame) |
Set the page frame to the given value. More... | |
void | set_node (byte *node) |
Set the page list node to the given value. More... | |
void | set_mtr (mtr_t *mtr) |
Set the mini-transaction context to the given value. More... | |
byte * | get_frame () const |
Get the page frame where this page list exists. More... | |
bool | is_equal (const plist_node_t &that) const |
Static Public Attributes | |
static const uint16_t | OFFSET_PREV = 0 |
Offset of the previous node. More... | |
static const uint16_t | OFFSET_NEXT = 2 |
Offset of the next node. More... | |
static const uint8_t | SIZE = 4 |
The size of a page list node. More... | |
Private Attributes | |
byte * | m_frame |
The page frame where this page list exists. More... | |
byte * | m_node |
The plist node is located at this address. More... | |
mtr_t * | m_mtr |
The mini-transaction context. More... | |
The node of page list.
The page list is similar to the file list (flst_node_t) except that it is completely within one page.
|
inlineexplicit |
Constructor.
[in] | mtr | Mini-transaction context. |
|
inline |
Default constructor.
Constructor.
[in] | mtr | Mini-transaction context |
[in] | frame | the page frame of this plist. |
Constructor.
[in] | frame | the page frame of this plist. |
[in] | node | the location of plist node. |
Constructor.
[in] | frame | Page frame where the page list node is located. |
[in] | node | Location of page list node within page frame. |
[in] | mtr | Mini-transaction context. |
|
default |
Copy constructor.
|
inline |
Obtain the offset of the page list node within the given page frame.
|
inline |
Get the page frame where this page list exists.
|
inline |
Get the offset of the next page list node.
|
inline |
Get the next page list node.
|
inline |
Get the offset of the previous page list node.
|
inline |
Get the previous page list node.
|
inline |
Initialize the current page list node.
The offset of next and previous nodes are set to 0.
|
inline |
Check if the current node is before the given node in the page (w.r.t the offset).
[in] | node | the other node. |
|
inline |
|
inline |
Check if the given page list node is null.
|
default |
|
inline |
Print the page list node into the given output stream.
[in] | out | the output stream. |
|
inline |
Obtain the memory location of the page list node.
|
inline |
Set the page frame to the given value.
[in] | frame | the page frame |
|
inline |
Set the mini-transaction context to the given value.
[in] | mtr | Mini-transaction context. |
|
inline |
Set the offset of the next node.
[in] | addr | the offset of next node. |
|
inline |
Set the next page list node.
[in] | next | the next page list node. |
|
inline |
Set the page list node to the given value.
[in] | node | the page list node. |
|
inline |
Set the offset of the previous node.
[in] | addr | the offset of previous node. |
|
inline |
Set the previous page list node.
[in] | prev | the previous page list node. |
|
private |
The page frame where this page list exists.
|
private |
The mini-transaction context.
|
private |
The plist node is located at this address.
|
static |
Offset of the next node.
(2 bytes)
|
static |
Offset of the previous node.
(2 bytes)
|
static |
The size of a page list node.