24#ifndef MYSQL_CSA_APPLIER_MONITOR_H
25#define MYSQL_CSA_APPLIER_MONITOR_H
Definition: applier_channel_monitor.h:34
std::size_t m_previous_commit_clock_value
Previous recorded commit order clock value.
Definition: applier_channel_monitor.h:73
std::chrono::milliseconds m_refresh_interval
Refresh current values (and previous) each 'm_refresh_interval' seconds.
Definition: applier_channel_monitor.h:79
std::chrono::time_point< std::chrono::system_clock > m_time_refresh
Last time we refreshed values.
Definition: applier_channel_monitor.h:77
std::size_t get_allowed_unblocks() const
Definition: applier_channel_monitor.cpp:95
void check_applier_progress()
Detects if the applier is stalled by monitoring progress metrics (applied events, scheduler/commit cl...
Definition: applier_channel_monitor.cpp:56
std::size_t m_previous_applied_events
Previous recorded value of applied events.
Definition: applier_channel_monitor.h:63
std::size_t m_active_trx
Active transactions.
Definition: applier_channel_monitor.h:71
void init_monitoring(std::chrono::milliseconds refresh_time=std::chrono::milliseconds{10000})
Initializes monitoring with custom refresh interval (default 10s).
Definition: applier_channel_monitor.cpp:35
Csa_channel & m_channel
Monitored CSA channel reference.
Definition: applier_channel_monitor.h:61
std::size_t get_current_unblock_counter() const
Definition: applier_channel_monitor.cpp:99
std::size_t m_total_unblock_counter
Total attempts to unblocking the applier.
Definition: applier_channel_monitor.h:83
std::size_t m_current_commit_clock_value
Current recorded commit order clock value.
Definition: applier_channel_monitor.h:75
std::size_t m_current_unblock_counter
Current attempts to unblocking the applier.
Definition: applier_channel_monitor.h:81
std::size_t m_current_clock_value
Current recorded clock value.
Definition: applier_channel_monitor.h:69
std::size_t m_current_applied_events
Current recorded value of applied events.
Definition: applier_channel_monitor.h:65
std::size_t m_previous_clock_value
Previous recorded clock value.
Definition: applier_channel_monitor.h:67
std::size_t m_allowed_unblocks
Allowed clock unblocks for the current stall.
Definition: applier_channel_monitor.h:85
std::size_t get_total_unblock_counter() const
Definition: applier_channel_monitor.cpp:103
Applier_channel_monitor(Csa_channel &channel)
Definition: applier_channel_monitor.cpp:32
void refresh_values()
Helper refreshing internal statistics.
Definition: applier_channel_monitor.cpp:42
std::chrono::milliseconds milliseconds
Definition: authorize_manager.cc:69
Definition: channel.cpp:28
Aggregates applier structures for a single channel.
Definition: csa_channel.h:40