![]() |
MySQL 9.5.0
Source Code Documentation
|
The context for a LOB operation. More...
#include <lob0lob.h>
Public Member Functions | |
| InsertContext (const BtrContext &btr_ctx, const big_rec_t *big_rec_vec) | |
| Constructor. More... | |
| const big_rec_t * | get_big_rec_vec () |
| Get the vector containing fields to be stored externally. More... | |
| ulint | get_big_rec_vec_size () |
| Get the size of vector containing fields to be stored externally. More... | |
Public Member Functions inherited from lob::BtrContext | |
| BtrContext () | |
| Default Constructor. More... | |
| BtrContext (mtr_t *mtr, dict_index_t *index, buf_block_t *block) | |
| Constructor. More... | |
| BtrContext (mtr_t *mtr, btr_pcur_t *pcur, dict_index_t *index, rec_t *rec, ulint *offsets, buf_block_t *block) | |
| Constructor. More... | |
| BtrContext (mtr_t *mtr, btr_pcur_t *pcur, dict_index_t *index, rec_t *rec, ulint *offsets, buf_block_t *block, opcode op) | |
| Constructor. More... | |
| BtrContext (const BtrContext &other) | |
| Copy Constructor. More... | |
| void | disown_inherited_fields (const upd_t *update) |
| Marks non-updated off-page fields as disowned by this record. More... | |
| void | set_ownership_of_extern_field (ulint i, bool val) |
| Sets the ownership bit of an externally stored field in a record. More... | |
| void | unmark_extern_fields () |
| Marks all extern fields in a record as owned by the record. More... | |
| void | free_externally_stored_fields (trx_id_t trx_id, undo_no_t undo_no, bool rollback, ulint rec_type, purge_node_t *node) |
| Frees the externally stored fields for a record. More... | |
| void | free_updated_extern_fields (trx_id_t trx_id, undo_no_t undo_no, const upd_t *update, bool rollback, big_rec_t *big_rec_vec) |
| Frees the externally stored fields for a record, if the field is mentioned in the update vector. More... | |
| page_zip_des_t * | get_page_zip () const |
| Gets the compressed page descriptor. More... | |
| page_no_t | get_page_no () const |
| Get the page number of clustered index block. More... | |
| ulint | get_rec_offset () const |
| Get the record offset within page of the clustered index record. More... | |
| bool | need_recalc () const |
| Check if there is a need to recalculate the context information. More... | |
| rec_t * | rec () const |
| Get the clustered index record pointer. More... | |
| byte * | get_field_ref (ulint field_no) const |
| Get the LOB reference for the given field number. More... | |
| bool | validate () const |
| Validate the current BLOB context object. More... | |
| bool | are_all_blobrefs_valid () const |
| Check to see if all pointers to externally stored columns in the record must be valid. More... | |
| bool | is_bulk () const |
| Determine whether current operation is a bulk insert operation. More... | |
| const page_t * | rec_frame () const |
| Get the beginning of the B-tree clustered index page frame that contains the current clustered index record (m_rec). More... | |
| void | commit_btr_mtr () |
| Commit the mini-transaction that is holding the latches of the clustered index record block. More... | |
| void | start_btr_mtr () |
| Start the mini-transaction that will be holding the latches of the clustered index record block. More... | |
| page_no_t | get_btr_page_no () const |
| Get the page number of clustered index record. More... | |
| void | rec_block_fix () |
| Increment the buffer fix count of the clustered index record block. More... | |
| void | rec_block_unfix () |
| Decrement the buffer fix count of the clustered index record block, X-latching it before, so that the overall buffer_fix_count doesn't change. More... | |
| void | restore_position () |
| Restore the position of the persistent cursor. More... | |
| dict_index_t * | index () const |
| Get the index object. More... | |
| dict_table_t * | table () const |
| Get the table object. More... | |
| space_id_t | space () const |
| Get the space id. More... | |
| const page_size_t | page_size () const |
| Obtain the page size of the underlying table. More... | |
| page_no_t | pages_in_extent () const |
| Determine the extent size (in pages) for the underlying table. More... | |
| void | check_redolog () |
| Check if there is enough space in the redo log file. More... | |
| void | make_nth_extern (ulint field_no) |
| Mark the nth field as externally stored. More... | |
| mtr_log_t | get_log_mode () |
| Get the log mode of the btr mtr. More... | |
| Flush_observer * | get_flush_observer () const |
| Get flush observer. More... | |
| ulint * | get_offsets () const |
| Get the record offsets array. More... | |
| bool | rec_offs_validate () const |
| Validate the record offsets array. More... | |
| mtr_t * | get_mtr () |
| Get the associated mini-transaction. More... | |
| buf_block_t * | block () const |
| Get the pointer to the clustered record block. More... | |
| void | store_position () |
| Save the position of the persistent cursor. More... | |
| void | check_redolog_normal () |
| Check if there is enough space in log file. More... | |
| void | check_redolog_bulk () |
| When bulk load is being done, check if there is enough space in redo log file. More... | |
| void | recalc () |
| Recalculate some of the members after restoring the persistent cursor. More... | |
| void | zblob_write_blobref (ulint field_no, mtr_t *mtr) |
| Write a blob reference of a field into a clustered index record in a compressed leaf page. More... | |
Public Attributes | |
| const big_rec_t * | m_big_rec_vec |
| The B-tree Context. More... | |
Public Attributes inherited from lob::BtrContext | |
| mtr_t * | m_mtr |
| The btr mtr that is holding the latch on the B-tree index page containing the clustered index record. More... | |
| btr_pcur_t * | m_pcur |
| Persistent cursor positioned on the clustered index record. More... | |
| dict_index_t * | m_index |
| rec_t * | m_rec |
| ulint * | m_offsets |
| buf_block_t * | m_block |
| opcode | m_op |
| ulint | m_rec_offset |
| Record offset within the page. More... | |
| page_no_t | m_btr_page_no |
| Page number where the clust rec is present. More... | |
The context for a LOB operation.
It contains the necessary information to carry out a LOB operation.
|
inline |
Constructor.
| [in] | btr_ctx | b-tree context for lob operation. |
| [in] | big_rec_vec | array of blobs |
|
inline |
Get the vector containing fields to be stored externally.
|
inline |
Get the size of vector containing fields to be stored externally.
| const big_rec_t* lob::InsertContext::m_big_rec_vec |
The B-tree Context.
vector containing fields to be stored externally