![]() |
MySQL 9.5.0
Source Code Documentation
|
This class manages memory for active transaction list. More...
#include <semisync_source.h>
Public Member Functions | |
| int | signal_waiting_sessions_all () |
| int | signal_waiting_sessions_up_to (const char *log_file_name, my_off_t log_file_pos) |
| TranxNode * | find_active_tranx_node (const char *log_file_name, my_off_t log_file_pos) |
| ActiveTranx (mysql_mutex_t *lock, unsigned long trace_level) | |
| ~ActiveTranx () | |
| int | insert_tranx_node (const char *log_file_name, my_off_t log_file_pos) |
| int | clear_active_tranx_nodes (const char *log_file_name, my_off_t log_file_pos) |
| bool | is_tranx_end_pos (const char *log_file_name, my_off_t log_file_pos) |
| bool | is_empty () |
Public Member Functions inherited from Trace | |
| void | function_enter (const char *func_name) |
| int | function_exit (const char *func_name, int exit_code) |
| bool | function_exit (const char *func_name, bool exit_code) |
| void | function_exit (const char *func_name) |
| Trace () | |
| Trace (unsigned long trace_level) | |
Static Public Member Functions | |
| static int | compare (const char *log_file_name1, my_off_t log_file_pos1, const char *log_file_name2, my_off_t log_file_pos2) |
Private Member Functions | |
| void | assert_lock_owner () |
| unsigned int | calc_hash (const unsigned char *key, unsigned int length) |
| unsigned int | get_hash_value (const char *log_file_name, my_off_t log_file_pos) |
| int | compare (const char *log_file_name1, my_off_t log_file_pos1, const TranxNode *node2) |
| int | compare (const TranxNode *node1, const char *log_file_name2, my_off_t log_file_pos2) |
| int | compare (const TranxNode *node1, const TranxNode *node2) |
Private Attributes | |
| TranxNodeAllocator | allocator_ |
| TranxNode * | trx_front_ |
| TranxNode * | trx_rear_ |
| TranxNode ** | trx_htb_ |
| int | num_entries_ |
| mysql_mutex_t * | lock_ |
Additional Inherited Members | |
Public Attributes inherited from Trace | |
| unsigned long | trace_level_ |
Static Public Attributes inherited from Trace | |
| static const unsigned long | kTraceFunction = 0x0040 |
| static const unsigned long | kTraceGeneral = 0x0001 |
| static const unsigned long | kTraceDetail = 0x0010 |
| static const unsigned long | kTraceNetWait = 0x0020 |
This class manages memory for active transaction list.
We record each active transaction with a TranxNode, each session can have only one open transaction. Because of EVENT, the total active transaction nodes can exceed the maximum allowed connections.
| ActiveTranx::ActiveTranx | ( | mysql_mutex_t * | lock, |
| unsigned long | trace_level | ||
| ) |
| ActiveTranx::~ActiveTranx | ( | ) |
|
inlineprivate |
|
inlineprivate |
| int ActiveTranx::clear_active_tranx_nodes | ( | const char * | log_file_name, |
| my_off_t | log_file_pos | ||
| ) |
|
static |
|
inlineprivate |
|
inlineprivate |
| TranxNode * ActiveTranx::find_active_tranx_node | ( | const char * | log_file_name, |
| my_off_t | log_file_pos | ||
| ) |
|
private |
| int ActiveTranx::insert_tranx_node | ( | const char * | log_file_name, |
| my_off_t | log_file_pos | ||
| ) |
|
inline |
| bool ActiveTranx::is_tranx_end_pos | ( | const char * | log_file_name, |
| my_off_t | log_file_pos | ||
| ) |
| int ActiveTranx::signal_waiting_sessions_all | ( | ) |
| int ActiveTranx::signal_waiting_sessions_up_to | ( | const char * | log_file_name, |
| my_off_t | log_file_pos | ||
| ) |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |