MySQL 9.2.0
Source Code Documentation
connection_control Namespace Reference

Classes

class  Connection_control_alloc
 
class  Connection_control_pfs_table_data_row
 
class  Connection_control_statistics
 Structure to maintain statistics. More...
 
class  Connection_control_tb_handle
 
class  Connection_control_variables
 Structure to maintain system variables. More...
 
class  Connection_delay_action
 Connection event action to enforce max failed login constraint. More...
 
class  Connection_event_coordinator
 Connection event coordinator. More...
 
class  Connection_event_observer
 Interface for defining action on connection events. More...
 
class  Connection_event_subscriber
 
class  CustomAllocator
 
class  Failed_attempts_list_imp
 
class  RD_lock
 Helper class : Wrapper on READ lock. More...
 
class  Security_context_wrapper
 
class  WR_lock
 Helper class : Wrapper on write lock. More...
 

Typedefs

typedef std::string Sql_string
 
typedef enum connection_control::status_var_action status_var_action
 
typedef Connection_control_pfs_table_data::const_iterator Connection_control_pfs_table_pos
 
typedef std::vector< Connection_control_pfs_table_data_row, CustomAllocator< Connection_control_pfs_table_data_row > > Connection_control_pfs_table_data
 
typedef weak_service_reference< const mysql_service_mysql_option_tracker_option_t, c_name, opt_nameweak_option
 

Enumerations

enum  status_var_action { ACTION_NONE = 0 , ACTION_INC , ACTION_RESET , ACTION_LAST }
 

Functions

template<class T >
Connection_control_malloc (size_t size)
 
static unsigned long long get_row_count ()
 
static int rnd_init (PSI_table_handle *handle, bool)
 
static int rnd_next (PSI_table_handle *handle)
 
static int rnd_pos (PSI_table_handle *handle)
 
static int read_column_value (PSI_table_handle *handle, PSI_field *field, unsigned int index)
 
static void reset_position (PSI_table_handle *handle)
 
static PSI_table_handleopen_table (PSI_pos **)
 
static void close_table (PSI_table_handle *handle)
 
bool register_pfs_table ()
 
bool unregister_pfs_table ()
 
void init_connection_delay_event (Connection_event_coordinator *coordinator)
 Initializes required objects for handling connection events. More...
 
void deinit_connection_delay_event ()
 Deinitializes objects and frees associated memory. More...
 
const std::string c_name ("component_connection_control")
 
const std::string opt_name ("mysql_option_tracker_option")
 
const std::string c_option_name ("Connection control component")
 
bool connection_control_component_option_usage_init ()
 
bool connection_control_component_option_usage_deinit ()
 
bool connection_control_component_option_usage_set (unsigned long every_nth)
 

Variables

static PFS_engine_table_share_proxyshare_list [1] = {nullptr}
 
static PFS_engine_table_share_proxy share
 
const int64 MIN_THRESHOLD = 0
 constants/variables declared in connection_delay_interfaces.h More...
 
const int64 DISABLE_THRESHOLD = 0
 
const int64 MAX_THRESHOLD = INT_MAX32
 
const int64 MIN_DELAY = 1000
 
const int64 MAX_DELAY = INT_MAX32
 
static mysql_rwlock_t connection_event_delay_lock
 variables used by connection_delay.cc More...
 
static opt_connection_control opt_enums []
 
static const size_t opt_enums_size = 3
 
static stats_connection_control status_vars_enums []
 
static const size_t status_vars_enums_size = 1
 
static Connection_delay_actiong_max_failed_connection_handler = nullptr
 
static Option_usage_dataoption_usage {nullptr}
 

Typedef Documentation

◆ Connection_control_pfs_table_data

◆ Connection_control_pfs_table_pos

typedef Connection_control_pfs_table_data::const_iterator connection_control::Connection_control_pfs_table_pos

◆ Sql_string

typedef std::string connection_control::Sql_string

◆ status_var_action

◆ weak_option

Enumeration Type Documentation

◆ status_var_action

Enumerator
ACTION_NONE 
ACTION_INC 
ACTION_RESET 
ACTION_LAST 

Function Documentation

◆ c_name()

const std::string connection_control::c_name ( "component_connection_control"  )

◆ c_option_name()

const std::string connection_control::c_option_name ( "Connection control component"  )

◆ close_table()

static void connection_control::close_table ( PSI_table_handle handle)
static

◆ connection_control_component_option_usage_deinit()

bool connection_control::connection_control_component_option_usage_deinit ( )

◆ connection_control_component_option_usage_init()

bool connection_control::connection_control_component_option_usage_init ( )

◆ connection_control_component_option_usage_set()

bool connection_control::connection_control_component_option_usage_set ( unsigned long  every_nth)

◆ Connection_control_malloc()

template<class T >
T connection_control::Connection_control_malloc ( size_t  size)

◆ deinit_connection_delay_event()

void connection_control::deinit_connection_delay_event ( )

Deinitializes objects and frees associated memory.

◆ get_row_count()

static unsigned long long connection_control::get_row_count ( )
static

◆ init_connection_delay_event()

void connection_control::init_connection_delay_event ( Connection_event_coordinator coordinator)

Initializes required objects for handling connection events.

Parameters
[in]coordinatorConnection_event_coordinator handle.

◆ open_table()

static PSI_table_handle * connection_control::open_table ( PSI_pos **  )
static

◆ opt_name()

const std::string connection_control::opt_name ( "mysql_option_tracker_option"  )

◆ read_column_value()

static int connection_control::read_column_value ( PSI_table_handle handle,
PSI_field field,
unsigned int  index 
)
static

◆ register_pfs_table()

bool connection_control::register_pfs_table ( )

◆ reset_position()

static void connection_control::reset_position ( PSI_table_handle handle)
static

◆ rnd_init()

static int connection_control::rnd_init ( PSI_table_handle handle,
bool   
)
static

◆ rnd_next()

static int connection_control::rnd_next ( PSI_table_handle handle)
static

◆ rnd_pos()

static int connection_control::rnd_pos ( PSI_table_handle handle)
static

◆ unregister_pfs_table()

bool connection_control::unregister_pfs_table ( )

Variable Documentation

◆ connection_event_delay_lock

mysql_rwlock_t connection_control::connection_event_delay_lock
static

variables used by connection_delay.cc

◆ DISABLE_THRESHOLD

const int64 connection_control::DISABLE_THRESHOLD = 0

◆ g_max_failed_connection_handler

Connection_delay_action* connection_control::g_max_failed_connection_handler = nullptr
static

◆ MAX_DELAY

const int64 connection_control::MAX_DELAY = INT_MAX32

◆ MAX_THRESHOLD

const int64 connection_control::MAX_THRESHOLD = INT_MAX32

◆ MIN_DELAY

const int64 connection_control::MIN_DELAY = 1000

◆ MIN_THRESHOLD

const int64 connection_control::MIN_THRESHOLD = 0

constants/variables declared in connection_delay_interfaces.h

◆ opt_enums

opt_connection_control connection_control::opt_enums[]
static
Initial value:
@ OPT_MIN_CONNECTION_DELAY
Definition: connection_control_data.h:37
@ OPT_FAILED_CONNECTIONS_THRESHOLD
Definition: connection_control_data.h:36
@ OPT_MAX_CONNECTION_DELAY
Definition: connection_control_data.h:38

◆ opt_enums_size

const size_t connection_control::opt_enums_size = 3
static

◆ option_usage

Option_usage_data* connection_control::option_usage {nullptr}
static

◆ share

PFS_engine_table_share_proxy connection_control::share
static

◆ share_list

PFS_engine_table_share_proxy* connection_control::share_list[1] = {nullptr}
static

◆ status_vars_enums

stats_connection_control connection_control::status_vars_enums[]
static
Initial value:
= {
@ STAT_CONNECTION_DELAY_TRIGGERED
Definition: connection_control_data.h:47

◆ status_vars_enums_size

const size_t connection_control::status_vars_enums_size = 1
static