160    const ulint payload_size =
 
  162    return (payload_size);
 
uint32_t page_no_t
Page number.
Definition: api0api.h:46
 
Kerberos Client Authentication nullptr
Definition: auth_kerberos_client_plugin.cc:247
 
static buf_frame_t * buf_block_get_frame(const buf_block_t *block)
Gets a pointer to the memory frame of a block.
 
mtr_log_t get_log_mode()
Get the log mode of the btr mtr.
Definition: lob0lob.h:1061
 
Flush_observer * get_flush_observer() const
Get flush observer.
Definition: lob0lob.h:1065
 
dict_index_t * index() const
Get the index object.
Definition: lob0lob.h:1017
 
const page_size_t page_size() const
Obtain the page size of the underlying table.
Definition: lob0lob.h:1037
 
Insert or write an uncompressed BLOB.
Definition: lob0ins.h:101
 
ulint m_remaining
Data remaining to be written.
Definition: lob0ins.h:179
 
void write_into_single_page(big_rec_field_t &field)
Write contents into a single BLOB page.
Definition: lob0ins.cc:237
 
dberr_t write_one_blob(size_t blob_j)
Write one blob field data.
Definition: lob0ins.cc:143
 
dberr_t write_first_page(big_rec_field_t &field)
Write first blob page.
Definition: lob0ins.cc:178
 
void set_page_next()
Make the current page as next page of previous page.
Definition: lob0ins.cc:171
 
ulint payload() const
Calculate the payload size of the BLOB page.
Definition: lob0ins.h:158
 
~Inserter()=default
Destructor.
 
dberr_t write_one_small_blob(size_t blob_j)
Write one blob field data.
Definition: lob0ins.cc:123
 
bool is_ok() const
Check if the BLOB operation has reported any errors.
Definition: lob0ins.h:133
 
blob_dir_t m_dir
The BLOB directory information.
Definition: lob0ins.h:176
 
void log_page_type()
Write the page type of the current BLOB page and also generate the redo log record.
Definition: lob0ins.h:142
 
dberr_t write_single_blob_page(big_rec_field_t &field, ulint nth_blob_page)
Write one blob page.
Definition: lob0ins.cc:211
 
Inserter(InsertContext *ctx)
Constructor.
Definition: lob0ins.h:105
 
dberr_t write()
Write all the BLOBs of the clustered index record.
Definition: lob0ins.cc:105
 
Page size descriptor.
Definition: page0size.h:50
 
size_t physical() const
Retrieve the physical page size (on-disk).
Definition: page0size.h:121
 
dberr_t
Definition: db0err.h:39
 
@ DB_SUCCESS
Definition: db0err.h:43
 
static bool dict_index_is_sdi(const dict_index_t *index)
Check if the index is SDI index.
 
uint16_t page_type_t
Definition: fil0fil.h:1223
 
constexpr page_no_t FIL_NULL
'null' (undefined) page offset in the context of file spaces
Definition: fil0fil.h:1161
 
constexpr page_type_t FIL_PAGE_SDI_BLOB
Uncompressed SDI BLOB page.
Definition: fil0fil.h:1292
 
constexpr page_type_t FIL_PAGE_TYPE_BLOB
Uncompressed BLOB page.
Definition: fil0fil.h:1267
 
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
 
Implements the large objects (LOB) module.
 
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
 
#define mtr_start(m)
Start a mini-transaction.
Definition: mtr0mtr.h:50
 
@ MLOG_2BYTES
2 bytes ...
Definition: mtr0types.h:73
 
Provides the large objects (LOB) module.
Definition: lob0bulk.h:44
 
const ulint LOB_HDR_SIZE
Size of an uncompressed LOB page header, in bytes.
Definition: lob0lob.h:148
 
byte page_t
Type of the index page.
Definition: page0types.h:152
 
A slot for a field in a big rec vector.
Definition: data0data.h:816
 
The buffer control block structure.
Definition: buf0buf.h:1764
 
This struct can hold BLOB routines/functions, and state variables, that are common for compressed and...
Definition: lob0ins.h:36
 
buf_block_t * alloc_blob_page()
Allocate one BLOB page.
Definition: lob0ins.cc:35
 
page_t * cur_page() const
Get the current BLOB page frame.
Definition: lob0ins.h:77
 
buf_block_t * get_previous_blob_block()
Get the previous BLOB page block.
Definition: lob0ins.cc:76
 
BaseInserter(InsertContext *ctx)
Constructor.
Definition: lob0ins.h:39
 
page_t * get_previous_blob_page()
Get the previous BLOB page frame.
Definition: lob0ins.cc:98
 
buf_block_t * m_cur_blob_block
The current BLOB buf_block_t object.
Definition: lob0ins.h:94
 
mtr_t m_blob_mtr
The mini trx used to write into blob pages.
Definition: lob0ins.h:87
 
bool is_index_sdi()
Check if the index is SDI index.
Definition: lob0ins.h:73
 
mtr_t * start_blob_mtr()
Start the BLOB mtr.
Definition: lob0ins.h:48
 
page_no_t m_prev_page_no
The previous BLOB page number.
Definition: lob0ins.h:91
 
page_no_t m_cur_blob_page_no
The current BLOB page number.
Definition: lob0ins.h:97
 
InsertContext * m_ctx
The BLOB operation context.
Definition: lob0ins.h:81
 
dberr_t m_err
Success or failure status of the operation so far.
Definition: lob0ins.h:84
 
The context for a LOB operation.
Definition: lob0lob.h:1143
 
The in-memory blob directory.
Definition: lob0lob.h:1218
 
Mini-transaction handle and buffer.
Definition: mtr0mtr.h:177
 
mtr_log_t set_log_mode(mtr_log_t mode)
Change the logging mode.
Definition: mtr0mtr.cc:468
 
void set_flush_observer(Flush_observer *observer)
Set flush observer.
Definition: mtr0mtr.h:522
 
unsigned long int ulint
Definition: univ.i:406