MySQL 26.7.0
Source Code Documentation
mysql::csa::Transaction_conflict_monitor Class Reference

Singleton Transaction_conflict_manager for all of the registered "instances". More...

#include <transaction_conflict_manager.h>

Static Public Member Functions

static Transaction_conflict_manager_sptrget (std::size_t instance_id)
 Obtain Transaction_conflict_manager for unique instance id. More...
 

Protected Types

using Instances_map = std::array< Transaction_conflict_manager_sptr, max_instances >
 

Protected Member Functions

 Transaction_conflict_monitor ()=default
 

Static Protected Member Functions

static void init ()
 This initialization function is called by "get" if needed. More...
 

Static Protected Attributes

static constexpr int max_instances
 
static Instances_map m_instances
 
static std::atomic< bool > m_init {false}
 
static std::atomic< bool > m_ready {false}
 

Detailed Description

Singleton Transaction_conflict_manager for all of the registered "instances".

We typically track statistics separately for user-defined channels

Member Typedef Documentation

◆ Instances_map

Constructor & Destructor Documentation

◆ Transaction_conflict_monitor()

mysql::csa::Transaction_conflict_monitor::Transaction_conflict_monitor ( )
protecteddefault

Member Function Documentation

◆ get()

Transaction_conflict_manager_sptr & mysql::csa::Transaction_conflict_monitor::get ( std::size_t  instance_id)
static

Obtain Transaction_conflict_manager for unique instance id.

Parameters
instance_idUnique instance id for the replication channel

◆ init()

void mysql::csa::Transaction_conflict_monitor::init ( )
staticprotected

This initialization function is called by "get" if needed.

Member Data Documentation

◆ m_init

std::atomic< bool > mysql::csa::Transaction_conflict_monitor::m_init {false}
staticprotected

◆ m_instances

Transaction_conflict_monitor::Instances_map mysql::csa::Transaction_conflict_monitor::m_instances
staticprotected

◆ m_ready

std::atomic< bool > mysql::csa::Transaction_conflict_monitor::m_ready {false}
staticprotected

◆ max_instances

constexpr int mysql::csa::Transaction_conflict_monitor::max_instances
inlinestaticconstexprprotected
Initial value:
=
static constexpr unsigned int max_instances
The maximum number of scheduler instances supported This value should be aligned with the 'MAX_CHANNE...
Definition: constants.h:34

The documentation for this class was generated from the following files: