MySQL 26.7.0
Source Code Documentation
mysql::csa::Csa_channel Struct Reference

Aggregates applier structures for a single channel. More...

#include <csa_channel.h>

Public Types

using Thread_pool = scheduler::Thread_pool< scheduler::Task_result, 8192 >
 Thread pool type for the scheduler. More...
 
using Thread_pool_ptr = std::shared_ptr< Thread_pool >
 Shared pointer to Thread_pool. More...
 
using Clock_ptr = std::shared_ptr< scheduler::Scheduler_clock >
 Shared pointer to Scheduler_clock. More...
 
using Scheduler_type = scheduler::Scheduler
 Scheduler type. More...
 
using Scheduler_ptr = std::shared_ptr< Scheduler_type >
 Shared pointer to Scheduler_type. More...
 
using Schedule_factory = scheduler::Schedule_factory
 Schedule factory type. More...
 
using Schedule_factory_ptr = std::shared_ptr< Schedule_factory >
 Shared pointer to Schedule_factory. More...
 
using Session_service_ptr = std::shared_ptr< Session_service >
 Shared pointer to Session_service. More...
 

Public Attributes

Thread_pool_ptr thread_pool
 Thread pool instance. More...
 
Clock_ptr scheduler_clock
 Channel clock. More...
 
Clock_ptr commit_order_clock
 Channel commit order clock. More...
 
Session_service_ptr session_service
 Session service - sessions contain channel information. More...
 
Scheduler_ptr scheduler
 Scheduler. More...
 
Transaction_provider_sptr provider
 Transaction provider for this channel. More...
 
std::size_t channel_instance_id
 Channel unique instance id. More...
 
THDchannel_thd
 Channel THD. More...
 
std::atomic< bool > m_channel_stopped {false}
 Stop channel flag, to avoid retries after applier stop. More...
 
std::atomic< bool > m_soft_stop_enabled {false}
 Stop stop flag, when enabled, CSA won't kill ongoing sessions. More...
 

Detailed Description

Aggregates applier structures for a single channel.

Member Typedef Documentation

◆ Clock_ptr

Shared pointer to Scheduler_clock.

◆ Schedule_factory

◆ Schedule_factory_ptr

Shared pointer to Schedule_factory.

◆ Scheduler_ptr

Shared pointer to Scheduler_type.

◆ Scheduler_type

◆ Session_service_ptr

Shared pointer to Session_service.

◆ Thread_pool

Thread pool type for the scheduler.

◆ Thread_pool_ptr

Shared pointer to Thread_pool.

Member Data Documentation

◆ channel_instance_id

std::size_t mysql::csa::Csa_channel::channel_instance_id

Channel unique instance id.

◆ channel_thd

THD* mysql::csa::Csa_channel::channel_thd

Channel THD.

◆ commit_order_clock

Clock_ptr mysql::csa::Csa_channel::commit_order_clock

Channel commit order clock.

◆ m_channel_stopped

std::atomic<bool> mysql::csa::Csa_channel::m_channel_stopped {false}

Stop channel flag, to avoid retries after applier stop.

◆ m_soft_stop_enabled

std::atomic<bool> mysql::csa::Csa_channel::m_soft_stop_enabled {false}

Stop stop flag, when enabled, CSA won't kill ongoing sessions.

◆ provider

Transaction_provider_sptr mysql::csa::Csa_channel::provider

Transaction provider for this channel.

◆ scheduler

Scheduler_ptr mysql::csa::Csa_channel::scheduler

Scheduler.

◆ scheduler_clock

Clock_ptr mysql::csa::Csa_channel::scheduler_clock

Channel clock.

◆ session_service

Session_service_ptr mysql::csa::Csa_channel::session_service

Session service - sessions contain channel information.

◆ thread_pool

Thread_pool_ptr mysql::csa::Csa_channel::thread_pool

Thread pool instance.


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