![]() |
MySQL 9.3.0
Source Code Documentation
|
This class contains metrics related to event and transaction scheduling activities in the replica MTA. More...
#include <applier_metrics.h>
Public Member Functions | |
void | store_last_applier_start () override |
Remember "now" as the last applier start time. More... | |
Time_based_metric_interface & | get_sum_applier_execution_time () override |
Return time metric for total applier execution time. More... | |
int64_t | get_last_applier_start_micros () const override |
Gets the time point when the metric timer started. More... | |
int64_t | get_total_execution_time () const override |
Returns the total time the applier was running. More... | |
void | inc_transactions_committed_count (int64_t amount) override |
increment the number of transactions committed. More... | |
int64_t | get_transactions_committed_count () const override |
Gets the number of transactions committed. More... | |
void | inc_transactions_received_count (int64_t amount) override |
increment the number of transactions pending. More... | |
int64_t | get_transactions_received_count () const override |
Gets the number of transactions pending. More... | |
void | inc_transactions_committed_size_sum (int64_t amount) override |
increment the size of transactions committed. More... | |
int64_t | get_transactions_committed_size_sum () const override |
Gets the total sum of the size of committed transactions. More... | |
void | inc_transactions_received_size_sum (int64_t amount) override |
increment the pending size of queued transactions. More... | |
int64_t | get_transactions_received_size_sum () const override |
Gets the pending size sum of queued transactions. More... | |
void | inc_events_committed_count (int64_t delta) override |
increment the number of events scheduled by a given amount. More... | |
int64_t | get_events_committed_count () const override |
Gets the number of events scheduled. More... | |
void | reset () override |
Resets the statistics to zero. More... | |
void | set_metrics_breakpoint (const char *relay_log_filename) override |
Set the metrics breakpoint, if it has not already been set. More... | |
bool | is_after_metrics_breakpoint () const override |
void | check_metrics_breakpoint (const char *relay_log_filename) override |
If we are before the metrics breakpoint, and the metrics breakpoint is equal to the given filename, remember that we are now after the metrics breakpoint. More... | |
Time_based_metric_interface & | get_work_from_source_wait_metric () override |
Returns time metrics for waits on work from the source. More... | |
Time_based_metric_interface & | get_workers_available_wait_metric () override |
Returns time metrics for waits on available workers. More... | |
Time_based_metric_interface & | get_transaction_dependency_wait_metric () override |
Returns time metrics for waits on transaction dependecies on workers. More... | |
Time_based_metric_interface & | get_worker_queues_memory_exceeds_max_wait_metric () override |
Returns time metrics for waits when a worker queue exceeds max memory. More... | |
Time_based_metric_interface & | get_worker_queues_full_wait_metric () override |
Returns time metrics for waits when the worker queues are full. More... | |
Time_based_metric_interface & | get_time_to_read_from_relay_log_metric () override |
Returns time metrics for relay log read wait times. More... | |
void | inc_commit_order_wait_stored_metrics (int64_t count, int64_t time) override |
Increments the stored values for the commit order metrics. More... | |
int64_t | get_number_of_waits_on_commit_order () const override |
Gets the stored number of times we waited on committed order. More... | |
int64_t | get_wait_time_on_commit_order () const override |
Gets the stored summed time waited on commit order. More... | |
![]() | |
virtual | ~Applier_metrics_interface ()=default |
Private Types | |
enum class | Metrics_breakpoint_state { unset , before , after } |
State of the metrics breakpoint. More... | |
Private Attributes | |
std::atomic< int64_t > | m_last_applier_start_micros {} |
stats collection start timestamp More... | |
Time_based_metric | m_sum_applier_execution_time |
total applier execution time More... | |
std::atomic_int64_t | m_transactions_committed {0} |
Holds the counter of transactions committed. More... | |
std::atomic_int64_t | m_transactions_received_count {0} |
Holds the counter of transactions currently pending. More... | |
std::string | m_first_received_relay_log |
The first (oldest) relay log that the receiver wrote to after metric collection was enabled. More... | |
std::atomic< Metrics_breakpoint_state > | m_metrics_breakpoint_state |
True if the receiver has initialized m_first_received_relay_log. More... | |
std::atomic_int64_t | m_transactions_committed_size_sum {0} |
Holds the total size of transactions committed till now. More... | |
std::atomic_int64_t | m_transactions_received_size_sum {0} |
Holds the executed event's size of transactions now ongoing. More... | |
std::atomic_int64_t | m_events_committed_count {0} |
Holds the counter of events scheduled. More... | |
Time_based_metric | m_wait_for_work_from_source {true} |
Tracks the number and time waited for transactions to apply. More... | |
Time_based_metric | m_wait_for_worker_available |
Tracks the number and time waited for transactions to apply. More... | |
Time_based_metric | m_wait_for_transaction_dependency |
Tracks the number and time waited for transaction dependencies. More... | |
Time_based_metric | m_wait_due_to_worker_queues_memory_exceeds_max |
Tracks the number and time waited for transaction dependencies. More... | |
Time_based_metric | m_wait_due_to_worker_queue_full |
Tracks the number and time waited for transaction dependencies. More... | |
Time_based_metric | m_time_to_read_from_relay_log |
Tracks the number and time waited for transaction dependencies. More... | |
std::atomic_int64_t | m_order_commit_wait_count {0} |
The stored number of time waited for commit order. More... | |
std::atomic_int64_t | m_order_commit_waited_time {0} |
The stored total amount of time waited for commit order. More... | |
This class contains metrics related to event and transaction scheduling activities in the replica MTA.
|
strongprivate |
|
overridevirtual |
If we are before the metrics breakpoint, and the metrics breakpoint is equal to the given filename, remember that we are now after the metrics breakpoint.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Gets the number of events scheduled.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Gets the time point when the metric timer started.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Gets the stored number of times we waited on committed order.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Return time metric for total applier execution time.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Returns time metrics for relay log read wait times.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Returns the total time the applier was running.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Returns time metrics for waits on transaction dependecies on workers.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Gets the number of transactions committed.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Gets the total sum of the size of committed transactions.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Gets the number of transactions pending.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Gets the pending size sum of queued transactions.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Gets the stored summed time waited on commit order.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Returns time metrics for waits on work from the source.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Returns time metrics for waits when the worker queues are full.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Returns time metrics for waits when a worker queue exceeds max memory.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Returns time metrics for waits on available workers.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Increments the stored values for the commit order metrics.
count | The count for commit order waits |
time | The time waited on commit order |
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
increment the number of events scheduled by a given amount.
delta | the amount of events to increment. |
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
increment the number of transactions committed.
amount | the amount of transactions to increment. |
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
increment the size of transactions committed.
amount | the size amount to increment. |
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
increment the number of transactions pending.
amount | the amount of transactions to increment. |
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
increment the pending size of queued transactions.
amount | the size amount to increment. |
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Resets the statistics to zero.
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Set the metrics breakpoint, if it has not already been set.
relay_log_filename | relay log name |
Implements cs::apply::instruments::Applier_metrics_interface.
|
overridevirtual |
Remember "now" as the last applier start time.
Implements cs::apply::instruments::Applier_metrics_interface.
|
private |
Holds the counter of events scheduled.
|
private |
The first (oldest) relay log that the receiver wrote to after metric collection was enabled.
|
private |
stats collection start timestamp
|
private |
True if the receiver has initialized m_first_received_relay_log.
|
private |
The stored number of time waited for commit order.
|
private |
The stored total amount of time waited for commit order.
|
private |
total applier execution time
|
private |
Tracks the number and time waited for transaction dependencies.
|
private |
Holds the counter of transactions committed.
|
private |
Holds the total size of transactions committed till now.
|
private |
Holds the counter of transactions currently pending.
|
private |
Holds the executed event's size of transactions now ongoing.
|
private |
Tracks the number and time waited for transaction dependencies.
|
private |
Tracks the number and time waited for transaction dependencies.
|
private |
Tracks the number and time waited for transaction dependencies.
|
private |
Tracks the number and time waited for transactions to apply.
|
private |
Tracks the number and time waited for transactions to apply.