MySQL 9.0.0
Source Code Documentation
que_thr_t Struct Reference

#include <que0que.h>

Public Attributes

que_common_t common
 type: QUE_NODE_THR More...
 
ulint magic_n
 magic number to catch memory corruption More...
 
que_node_tchild
 graph child node More...
 
que_tgraph
 graph where this node belongs More...
 
que_thr_state_t state
 state of the query thread More...
 
bool is_active
 true if the thread has been set to the run state in que_thr_move_to_run_state, but not deactivated in que_thr_dec_reference_count More...
 
que_node_trun_node
 pointer to the node where the subgraph down from this node is currently executed More...
 
que_node_tprev_node
 pointer to the node from which the control came More...
 
ulint resource
 resource usage of the query thread thus far More...
 
ulint lock_state
 lock state of thread (table or row) More...
 
struct srv_slot_tslot
 The thread slot in the lock_sys->waiting_threads array protected by lock_sys->wait_mutex when writing to it, and also by trx->mutex when changing from null to non-null. More...
 
 thrs
 list of thread nodes of the fork node More...
 
 trx_thrs
 lists of threads in wait list of the trx More...
 
 queue
 list of runnable thread nodes in the server task queue More...
 
ulint fk_cascade_depth
 maximum cascading call depth supported for foreign key constraint related delete/updates More...
 
row_prebuilt_tprebuilt
 prebuilt structure processed by the query thread More...
 

Member Data Documentation

◆ child

que_node_t* que_thr_t::child

graph child node

◆ common

que_common_t que_thr_t::common

type: QUE_NODE_THR

◆ fk_cascade_depth

ulint que_thr_t::fk_cascade_depth

maximum cascading call depth supported for foreign key constraint related delete/updates

◆ graph

que_t* que_thr_t::graph

graph where this node belongs

◆ is_active

bool que_thr_t::is_active

true if the thread has been set to the run state in que_thr_move_to_run_state, but not deactivated in que_thr_dec_reference_count

◆ lock_state

ulint que_thr_t::lock_state

lock state of thread (table or row)

◆ magic_n

ulint que_thr_t::magic_n

magic number to catch memory corruption

◆ prebuilt

row_prebuilt_t* que_thr_t::prebuilt

prebuilt structure processed by the query thread

◆ prev_node

que_node_t* que_thr_t::prev_node

pointer to the node from which the control came

◆ queue

que_thr_t::queue

list of runnable thread nodes in the server task queue

◆ resource

ulint que_thr_t::resource

resource usage of the query thread thus far

◆ run_node

que_node_t* que_thr_t::run_node

pointer to the node where the subgraph down from this node is currently executed

◆ slot

struct srv_slot_t* que_thr_t::slot

The thread slot in the lock_sys->waiting_threads array protected by lock_sys->wait_mutex when writing to it, and also by trx->mutex when changing from null to non-null.

While reading, one can either hold the lock_sys->wait_mutex, or hold the trx->mutex and a proof that no one has woken the trx yet, so the slot is either still null (if trx hadn't yet started the sleep), or already non-null (if it already started sleep), but definitely not changing from null to non-null (as it requires trx->mutex) nor changing from non-null to null (as it happens after wake up).

◆ state

que_thr_state_t que_thr_t::state

state of the query thread

◆ thrs

que_thr_t::thrs

list of thread nodes of the fork node

◆ trx_thrs

que_thr_t::trx_thrs

lists of threads in wait list of the trx


The documentation for this struct was generated from the following file: