24#ifndef MYSQL_CSA_SESSION_SERVICE_BOUNDED_QUEUE_H
25#define MYSQL_CSA_SESSION_SERVICE_BOUNDED_QUEUE_H
Definition: rpl_rli.h:208
Service that provides a free session to executing transactions.
Definition: session_service_bounded_queue.h:41
std::size_t m_session_number
The number of maintained sessions.
Definition: session_service_bounded_queue.h:79
virtual ~Session_service_bounded_queue() override
Virtual destructor.
Definition: session_service_bounded_queue.cpp:32
Session_registry m_sessions
The session registry queue.
Definition: session_service_bounded_queue.h:76
Relay_log_info * m_channel_rli
Pointer to the channel RLI (to share data, such as applier privileges)
Definition: session_service_bounded_queue.h:81
bool deinit() override
Deinitializes the session service.
Definition: session_service_bounded_queue.cpp:34
Session_service::Task_id Task_id
Alias for task identifier from base class.
Definition: session_service_bounded_queue.h:44
Session_service_bounded_queue(Session_service_psi psi_params={})
Constructor.
Definition: session_service_bounded_queue.cpp:28
Relay_context_ptr acquire_session(Task_id id) override
Acquires a session for the given task ID.
Definition: session_service_bounded_queue.cpp:56
Session_service_psi m_psi
PSI parameters.
Definition: session_service_bounded_queue.h:83
void release_session(Relay_context_ptr session, Task_id id) override
Releases a session back to the pool.
Definition: session_service_bounded_queue.cpp:63
std::shared_ptr< Relay_context > Relay_context_entry
Type alias for a shared pointer to Relay_context.
Definition: session_service_bounded_queue.h:71
bool init(std::size_t session_number, Relay_log_info *channel_rli) override
Initializes the session service with a bounded queue.
Definition: session_service_bounded_queue.cpp:40
Service that provides a free session to executing transactions.
Definition: session_service.h:44
mysql::scheduler::Task_id Task_id
Alias for task identifier.
Definition: session_service.h:47
Represents the identifier of a task ingested by the scheduler,.
Definition: task_id.h:41
Binary log event definitions.
constexpr std::size_t csa_session_default_cache_size
Definition: tune.h:34
Definition: channel.cpp:28
std::shared_ptr< Relay_context > Relay_context_ptr
Definition: relay_context.h:39
Dependency_tracker instrumentation parameters, packed into this structure to simplify construction of...
Definition: session_service_psi.h:38