166 ulong lock_wait_timeout);
170 ulong lock_wait_timeout);
176 void (*after_wait)(
void));
struct PSI_table PSI_table
Definition: psi_table_bits.h:107
Some integer typedefs for easier portability.
static my_thread_id thread_id
Definition: my_thr_init.cc:63
uint32 my_thread_id
Definition: my_thread_local.h:34
static int count
Definition: myisam_ftdump.cc:45
Provides atomic access in shared-exclusive modes.
Definition: shared_spin_lock.h:79
Instrumentation helpers for conditions.
Instrumentation helpers for mutexes.
Definition: thr_lock.h:99
thr_lock_type type
Definition: thr_lock.h:100
thr_locked_row_action action
Definition: thr_lock.h:101
Definition: thr_lock.h:124
mysql_cond_t * cond
Definition: thr_lock.h:128
struct PSI_table * m_psi
Definition: thr_lock.h:132
THR_LOCK_INFO * owner
Definition: thr_lock.h:125
void * debug_print_param
Definition: thr_lock.h:131
THR_LOCK_DATA * next
Definition: thr_lock.h:126
thr_lock_type type
Definition: thr_lock.h:129
void * status_param
Definition: thr_lock.h:130
THR_LOCK_DATA ** prev
Definition: thr_lock.h:126
Definition: thr_lock.h:119
mysql_cond_t * suspend
Definition: thr_lock.h:121
my_thread_id thread_id
Definition: thr_lock.h:120
Definition: thr_lock.h:139
ulong write_lock_count
Definition: thr_lock.h:147
struct st_lock_list read_wait
Definition: thr_lock.h:142
struct st_lock_list write_wait
Definition: thr_lock.h:144
LIST list
Definition: thr_lock.h:140
void(* restore_status)(void *)
Definition: thr_lock.h:152
void(* get_status)(void *, int)
Definition: thr_lock.h:149
bool(* check_status)(void *)
Definition: thr_lock.h:153
struct st_lock_list write
Definition: thr_lock.h:145
mysql_mutex_t mutex
Definition: thr_lock.h:141
uint read_no_write_count
Definition: thr_lock.h:148
void(* copy_status)(void *, void *)
Definition: thr_lock.h:150
void(* update_status)(void *)
Definition: thr_lock.h:151
struct st_lock_list read
Definition: thr_lock.h:143
An instrumented cond structure.
Definition: mysql_cond_bits.h:50
An instrumented mutex structure.
Definition: mysql_mutex_bits.h:50
Definition: thr_lock.h:135
THR_LOCK_DATA * data
Definition: thr_lock.h:136
THR_LOCK_DATA ** last
Definition: thr_lock.h:136
void thr_lock_merge_status(THR_LOCK_DATA **data, uint count)
Ensure that all locks for a given table have the same status_param.
Definition: thr_lock.cc:950
void thr_set_lock_wait_callback(void(*before_wait)(void), void(*after_wait)(void))
Definition: thr_lock.cc:129
void thr_lock_init(THR_LOCK *lock)
Definition: thr_lock.cc:307
void thr_lock_info_init(THR_LOCK_INFO *info, my_thread_id thread_id, mysql_cond_t *suspend)
Definition: thr_lock.cc:331
ulong locks_immediate
Definition: thr_lock.cc:116
thr_lock_type
Definition: thr_lock.h:51
@ TL_WRITE
Definition: thr_lock.h:92
@ TL_WRITE_LOW_PRIORITY
Definition: thr_lock.h:90
@ TL_WRITE_ONLY
Definition: thr_lock.h:94
@ TL_READ_NO_INSERT
Definition: thr_lock.h:67
@ TL_WRITE_DEFAULT
Definition: thr_lock.h:88
@ TL_UNLOCK
Definition: thr_lock.h:53
@ TL_READ_HIGH_PRIORITY
Definition: thr_lock.h:65
@ TL_WRITE_CONCURRENT_DEFAULT
Definition: thr_lock.h:78
@ TL_READ
Definition: thr_lock.h:62
@ TL_WRITE_ALLOW_WRITE
Definition: thr_lock.h:73
@ TL_READ_WITH_SHARED_LOCKS
Definition: thr_lock.h:63
@ TL_IGNORE
Definition: thr_lock.h:52
@ TL_WRITE_CONCURRENT_INSERT
Definition: thr_lock.h:83
@ TL_READ_DEFAULT
Definition: thr_lock.h:61
enum thr_lock_type thr_upgraded_concurrent_insert_lock
Definition: thr_lock.cc:117
enum_thr_lock_result
Definition: thr_lock.h:104
@ THR_LOCK_DEADLOCK
Definition: thr_lock.h:108
@ THR_LOCK_ABORTED
Definition: thr_lock.h:106
@ THR_LOCK_WAIT_TIMEOUT
Definition: thr_lock.h:107
@ THR_LOCK_SUCCESS
Definition: thr_lock.h:105
thr_locked_row_action
Definition: thr_lock.h:97
@ THR_NOWAIT
Definition: thr_lock.h:97
@ THR_SKIP
Definition: thr_lock.h:97
@ THR_DEFAULT
Definition: thr_lock.h:97
@ THR_WAIT
Definition: thr_lock.h:97
enum enum_thr_lock_result thr_lock(THR_LOCK_DATA *data, THR_LOCK_INFO *owner, enum thr_lock_type lock_type, ulong lock_wait_timeout)
Definition: thr_lock.cc:477
void thr_print_locks(void)
Definition: thr_lock.cc:1073
void thr_abort_locks_for_thread(THR_LOCK *lock, my_thread_id thread)
Definition: thr_lock.cc:1017
void thr_unlock(THR_LOCK_DATA *data)
Definition: thr_lock.cc:734
enum enum_thr_lock_result thr_multi_lock(THR_LOCK_DATA **data, uint count, THR_LOCK_INFO *owner, ulong lock_wait_timeout)
Definition: thr_lock.cc:898
ulong locks_waited
Definition: thr_lock.h:45
void thr_multi_unlock(THR_LOCK_DATA **data, uint count)
Definition: thr_lock.cc:988
LIST * thr_lock_thread_list
Definition: thr_lock.cc:123
void thr_lock_delete(THR_LOCK *lock)
Definition: thr_lock.cc:323
mysql_mutex_t THR_LOCK_lock
Definition: my_thr_init.cc:77
void thr_lock_data_init(THR_LOCK *lock, THR_LOCK_DATA *data, void *status_param)
Definition: thr_lock.cc:339
ulong max_write_lock_count
Definition: thr_lock.cc:124