MySQL 8.0.40
Source Code Documentation
|
Lock struct; protected by lock_sys latches. More...
#include <lock0priv.h>
Public Member Functions | |
UT_LIST_NODE_T (lock_t) trx_locks | |
list of the locks of the transaction More... | |
void | unlock_gap_lock () |
Unlock the GAP Lock part of this Next Key Lock. More... | |
bool | is_record_lock () const |
Determine if the lock object is a record lock. More... | |
bool | is_predicate () const |
Determine if it is predicate lock. More... | |
bool | is_waiting () const |
bool | is_gap () const |
bool | is_record_not_gap () const |
bool | is_next_key_lock () const |
bool | is_insert_intention () const |
bool | includes_supremum () const |
uint32_t | type () const |
lock_mode | mode () const |
Locks_hashtable & | hash_table () const |
Get lock hash table. More... | |
trx_que_t | trx_que_state () const |
std::ostream & | print (std::ostream &out) const |
Print the lock object into the given output stream. More... | |
std::string | type_mode_string () const |
Convert the member 'type_mode' into a human readable string. More... | |
const char * | type_string () const |
Bitset< const byte > | bitset () const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
Bitset< byte > | bitset () |
Gets access to the LOCK_REC's bitmap, which indicates heap_no-s, which are the subject of this lock request. More... | |
Public Attributes | |
trx_t * | trx |
transaction owning the lock More... | |
dict_index_t * | index |
Index for a record lock. More... | |
lock_t * | hash |
Hash chain node for a record lock. More... | |
union { | |
lock_table_t tab_lock | |
Table lock. More... | |
lock_rec_t rec_lock | |
Record lock. More... | |
}; | |
ulonglong | m_psi_internal_thread_id |
Performance schema thread that created the lock. More... | |
ulonglong | m_psi_event_id |
Performance schema event that created the lock. More... | |
uint32_t | type_mode |
The lock type and mode bit flags. More... | |
uint64_t | m_seq |
Timestamp when it was created. More... | |
Lock struct; protected by lock_sys latches.
Gets access to the LOCK_REC's bitmap, which indicates heap_no-s, which are the subject of this lock request.
This should be used directly only in the lock-sys code. Use lock_rec_bitmap_reset(), lock_rec_reset_nth_bit(), lock_rec_set_nth_bit(), and lock_rec_get_nth_bit() wrappers instead. In particular this bitset might be shorter than actual number of heap_no-s on the page!
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
Get lock hash table.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Determine if it is predicate lock.
|
inline |
Determine if the lock object is a record lock.
|
inline |
|
inline |
|
inline |
|
inline |
Print the lock object into the given output stream.
[in,out] | out | the output stream |
|
inline |
|
inline |
|
inline |
Convert the member 'type_mode' into a human readable string.
|
inline |
|
inline |
Unlock the GAP Lock part of this Next Key Lock.
lock_t::UT_LIST_NODE_T | ( | lock_t | ) |
list of the locks of the transaction
union { ... } lock_t::@189 |
lock_t* lock_t::hash |
Hash chain node for a record lock.
The link node in a singly linked list, used by the hash table.
dict_index_t* lock_t::index |
Index for a record lock.
ulonglong lock_t::m_psi_event_id |
Performance schema event that created the lock.
ulonglong lock_t::m_psi_internal_thread_id |
Performance schema thread that created the lock.
uint64_t lock_t::m_seq |
Timestamp when it was created.
lock_rec_t lock_t::rec_lock |
Record lock.
lock_table_t lock_t::tab_lock |
Table lock.
trx_t* lock_t::trx |
transaction owning the lock
uint32_t lock_t::type_mode |
The lock type and mode bit flags.
LOCK_GAP or LOCK_REC_NOT_GAP, LOCK_INSERT_INTENTION, wait flag, ORed