uint32_t page_no_t
Page number.
Definition: api0api.h:46
Kerberos Client Authentication nullptr
Definition: auth_kerberos_client_plugin.cc:251
void btr_page_free_low(dict_index_t *index, buf_block_t *block, ulint level, mtr_t *mtr)
Frees a file page used in an index tree.
Definition: btr0btr.cc:554
constexpr page_type_t FIL_PAGE_TYPE_LOB_DATA
Data pages of uncompressed LOB.
Definition: fil0fil.h:1302
uint16_t page_type_t
Definition: fil0fil.h:1218
constexpr uint32_t FIL_PAGE_TYPE
file page type: FIL_PAGE_INDEX,..., 2 bytes.
Definition: fil0types.h:76
constexpr uint32_t FIL_PAGE_DATA
start of the data on the page
Definition: fil0types.h:111
constexpr uint32_t FIL_PAGE_DATA_END
size of the page trailer
Definition: fil0types.h:119
static uint32_t mach_read_from_4(const byte *b)
The following function is used to fetch data from 4 consecutive bytes.
static void mach_write_to_6(byte *b, uint64_t id)
The following function is used to store data in 6 consecutive bytes.
void mlog_log_string(byte *ptr, ulint len, mtr_t *mtr)
Logs a write of a string to a file page buffered in the buffer pool.
Definition: mtr0log.cc:347
void mlog_write_ulint(byte *ptr, ulint val, mlog_id_t type, mtr_t *mtr)
Writes 1, 2 or 4 bytes to a file page.
Definition: mtr0log.cc:258
@ MLOG_4BYTES
4 bytes ...
Definition: mtr0types.h:76
@ MLOG_1BYTE
one byte is written
Definition: mtr0types.h:70
@ MLOG_2BYTES
2 bytes ...
Definition: mtr0types.h:73
Provides the large objects (LOB) module.
Definition: lob0bulk.h:44
required string type
Definition: replication_group_member_actions.proto:34
The buffer control block structure.
Definition: buf0buf.h:1747
Data structure for an index.
Definition: dict0mem.h:1041
Definition: lob0util.h:42
mtr_t * m_mtr
Definition: lob0util.h:129
dict_index_t * m_index
Definition: lob0util.h:130
page_type_t get_page_type() const
Definition: lob0util.h:95
buf_block_t * m_block
Definition: lob0util.h:128
byte * frame() const
Definition: lob0util.h:99
The LOB data page carrying the user data.
Definition: lob0pages.h:36
buf_block_t * remove_middle(trx_t *trx, ulint offset, ulint &len)
ulint read(ulint offset, byte *ptr, ulint want)
Read data from the data page.
Definition: lob0pages.cc:202
void set_trx_id_no_redo(trx_id_t id)
Write the trx identifier to the header, without generating redo log.
Definition: lob0pages.h:93
ulint append(trx_id_t trxid, byte *&data, ulint &len)
Append given data in data page.
Definition: lob0pages.cc:116
static const ulint OFFSET_VERSION
Definition: lob0pages.h:37
buf_block_t * alloc(mtr_t *alloc_mtr, bool is_bulk)
Allocate a LOB data page.
Definition: lob0pages.cc:143
data_page_t(buf_block_t *block, mtr_t *mtr, dict_index_t *index)
Definition: lob0pages.h:50
void replace_inline(ulint offset, const byte *&ptr, ulint &want, mtr_t *mtr)
Replace some or all parts of the data inline.
Definition: lob0pages.cc:35
ulint write(const byte *&data, ulint &len)
Write data into a data page.
Definition: lob0pages.cc:170
static ulint payload()
Definition: lob0pages.h:98
buf_block_t * replace(trx_t *trx, ulint offset, const byte *&ptr, ulint &want, mtr_t *mtr)
Create a new data page and replace some or all parts of the old data with data.
Definition: lob0pages.cc:59
static const ulint OFFSET_TRX_ID
Definition: lob0pages.h:39
void set_data_len(ulint len)
Definition: lob0pages.h:126
ulint max_space_available() const
Definition: lob0pages.h:158
data_page_t(mtr_t *mtr, dict_index_t *index)
Definition: lob0pages.h:53
std::pair< ulint, byte * > insert_middle(trx_t *trx, ulint offset, byte *&data, ulint &len, buf_block_t *&new_block)
void dealloc()
Definition: lob0pages.h:72
ulint space_left() const
Definition: lob0pages.cc:141
static const ulint LOB_PAGE_DATA
Definition: lob0pages.h:40
static const ulint OFFSET_DATA_LEN
Definition: lob0pages.h:38
void set_version_0()
Definition: lob0pages.h:68
void set_page_type()
Definition: lob0pages.h:77
void set_trx_id(trx_id_t id)
Definition: lob0pages.h:84
data_page_t(buf_block_t *block, mtr_t *mtr)
Constructor.
Definition: lob0pages.h:45
ulint get_data_len() const
Definition: lob0pages.h:122
byte * data_begin() const
Definition: lob0pages.h:102
data_page_t(buf_block_t *block)
Constructor.
Definition: lob0pages.h:58
buf_block_t * load_x(page_no_t page_no)
Definition: lob0pages.cc:184
Mini-transaction handle and buffer.
Definition: mtr0mtr.h:177
Definition: trx0trx.h:675
ib_id_t trx_id_t
Transaction identifier (DB_TRX_ID, DATA_TRX_ID)
Definition: trx0types.h:138
#define UNIV_PAGE_SIZE
The universal page size of the database.
Definition: univ.i:294
unsigned long int ulint
Definition: univ.i:406
constexpr ulint ULINT_UNDEFINED
The 'undefined' value for a ulint.
Definition: univ.i:420
#define ut_ad(EXPR)
Debug assertion.
Definition: ut0dbg.h:105
#define ut_a(EXPR)
Abort execution if EXPR does not evaluate to nonzero.
Definition: ut0dbg.h:93