mtr_t * get_mtr()
Get the associated mini-transaction.
Definition: lob0lob.h:1040
dict_table_t * table() const
Get the table object.
Definition: lob0lob.h:977
dict_index_t * index() const
Get the index object.
Definition: lob0lob.h:973
bool rec_offs_validate() const
Validate the record offsets array.
Definition: lob0lob.h:1031
bool validate_zblob_page_type(const page_t *page) const
Check if the page type is set correctly.
Definition: lob0del.h:73
void x_latch_rec_page()
Obtain an x-latch on the clustered index record page.
Definition: lob0del.cc:32
mtr_t m_mtr
Definition: lob0del.h:118
bool can_free() const
Check if the BLOB can be freed.
Definition: lob0del.cc:138
bool validate_page_type(const page_t *page) const
Validate the page type of the given page frame.
Definition: lob0del.h:65
dberr_t free_first_page()
Free the first page of the BLOB and update the BLOB reference in the clustered index.
Definition: lob0del.cc:56
dberr_t destroy()
Free the LOB object.
Definition: lob0del.cc:106
DeleteContext & m_ctx
Definition: lob0del.h:117
bool validate_blob_page_type(const page_t *page) const
Check if the page type is set correctly.
Definition: lob0del.h:89
Deleter(DeleteContext &ctx)
Constructor.
Definition: lob0del.h:37
int page
Definition: ctype-mb.cc:1233
dberr_t
Definition: db0err.h:38
static rw_lock_t * dict_index_get_lock(dict_index_t *index)
Gets the read-write lock of the index tree.
constexpr page_type_t FIL_PAGE_TYPE_ZBLOB
First compressed BLOB page.
Definition: fil0fil.h:1255
uint16_t page_type_t
Definition: fil0fil.h:1208
constexpr page_type_t FIL_PAGE_TYPE_ZBLOB2
Subsequent compressed BLOB page.
Definition: fil0fil.h:1258
constexpr page_type_t FIL_PAGE_SDI_ZBLOB
Compressed SDI BLOB page.
Definition: fil0fil.h:1280
page_type_t fil_page_get_type(const byte *page)
Get the file page type.
Definition: fil0fil.h:1325
constexpr page_type_t FIL_PAGE_SDI_BLOB
Uncompressed SDI BLOB page.
Definition: fil0fil.h:1277
constexpr page_type_t FIL_PAGE_TYPE_BLOB
Uncompressed BLOB page.
Definition: fil0fil.h:1252
Implements the large objects (LOB) module.
#define mtr_is_page_fix(m, p, t, table)
Check if memo contains the given page ignore if table is intrinsic.
Definition: mtr0mtr.h:101
#define mtr_memo_contains_flagged(m, p, l)
Definition: mtr0mtr.h:136
@ MTR_MEMO_X_LOCK
Definition: mtr0types.h:284
@ MTR_MEMO_PAGE_X_FIX
Definition: mtr0types.h:272
@ MTR_MEMO_SX_LOCK
Definition: mtr0types.h:286
Provides the large objects (LOB) module.
Definition: lob0del.h:31
byte page_t
Type of the index page.
Definition: page0types.h:151
required string type
Definition: replication_group_member_actions.proto:33
bool is_clustered() const
Definition: dict0mem.h:1310
bool is_intrinsic() const
Determine whether the table is intrinsic.
Definition: dict0mem.h:2695
The context information when the delete operation on LOB is taking place.
Definition: lob0lob.h:1379
bool is_compressed() const
Determine if it is compressed page format.
Definition: lob0lob.h:1406
bool validate_blobref() const
Validate the LOB reference object.
Definition: lob0lob.h:1427
bool has_atomic_blobs() const
Check if tablespace supports atomic blobs.
Definition: lob0lob.h:1410
ref_t m_blobref
the BLOB reference or external field reference.
Definition: lob0lob.h:1445
page_t * page_align() const
Get the start of a page containing this blob reference.
Definition: lob0lob.h:462
Mini-transaction handle and buffer.
Definition: mtr0mtr.h:176
#define ut_error
Abort execution.
Definition: ut0dbg.h:100
#define ut_ad(EXPR)
Debug assertion.
Definition: ut0dbg.h:104