MySQL 9.1.0
Source Code Documentation
rpl_applier_metrics_service.h File Reference

Go to the source code of this file.

Classes

struct  s_mysql_replication_applier_metrics
 A service that allows you to extract stats from the replica applier. More...
 

Typedefs

using Applier_metric_field = mysql::abi_helpers::Field< Enum_applier_metric_type >
 
using Applier_metrics_row = mysql::abi_helpers::Array_view< Applier_metric_field >
 
using Applier_metrics_table = mysql::abi_helpers::Array_view< Applier_metrics_row >
 
using Worker_metric_field = mysql::abi_helpers::Field< Enum_worker_metric_type >
 
using Worker_metrics_row = mysql::abi_helpers::Array_view< Worker_metric_field >
 
using Worker_metrics_table = mysql::abi_helpers::Array_view< Worker_metrics_row >
 
typedef struct s_mysql_replication_applier_metrics mysql_service_replication_applier_metrics_t
 A service that allows you to extract stats from the replica applier. More...
 

Enumerations

enum  Enum_applier_metric_type {
  applier_metrics_channel_name_t = 0 , applier_execution_time_t = 1 , last_applier_start_t = 2 , transactions_committed_t = 3 ,
  transaction_ongoing_t = 4 , are_transaction_pending_counts_unknown_t = 5 , transaction_pending_t = 6 , transactions_committed_size_sum_t = 7 ,
  transactions_ongoing_full_size_sum_t = 8 , transactions_ongoing_progress_size_sum_t = 9 , are_transaction_pending_sizes_unknown_t = 10 , transactions_pending_size_sum_t = 11 ,
  events_committed_count_t = 12 , waits_for_work_from_source_count_t = 13 , waits_for_work_from_source_sum_time_t = 14 , waits_for_available_worker_count_t = 15 ,
  waits_for_available_worker_sum_time_t = 16 , waits_for_commit_dependency_count_t = 17 , waits_for_commit_dependency_sum_time_t = 18 , waits_for_queues_memory_count_t = 19 ,
  waits_for_queues_memory_sum_time_t = 20 , waits_for_queues_full_count_t = 21 , waits_for_queues_full_sum_time_t = 22 , waits_due_to_commit_order_count_t = 23 ,
  waits_due_to_commit_order_sum_time_t = 24 , time_to_read_from_relay_log_t = 25 , applier_metric_type_end
}
 Gives a type to each piece of data extracted. More...
 
enum  Enum_worker_metric_type {
  worker_metrics_channel_name_t = 0 , worker_id_t = 1 , is_thread_id_unknown_t = 2 , thread_id_t = 3 ,
  transaction_type_t = 4 , transaction_ongoing_full_size_t = 5 , transaction_ongoing_progress_size_t = 6 , worker_metric_type_end
}
 The information for each replication worker. More...
 
enum  Worker_transaction_type { UNKNOWN_TRX_TYPE = 1 , DML_TRX_TYPE = 2 , DDL_TRX_TYPE = 3 }
 Transaction type for workers. More...
 

Typedef Documentation

◆ Applier_metric_field

◆ Applier_metrics_row

◆ Applier_metrics_table

◆ Worker_metric_field

◆ Worker_metrics_row

◆ Worker_metrics_table

Enumeration Type Documentation

◆ Enum_applier_metric_type

Gives a type to each piece of data extracted.

Enumerator
applier_metrics_channel_name_t 

CHANNEL_NAME.

applier_execution_time_t 

Total execution time.

last_applier_start_t 

Last applier start.

transactions_committed_t 

Transactions committed.

transaction_ongoing_t 

Transactions ongoing.

are_transaction_pending_counts_unknown_t 

transaction pending values unknown

transaction_pending_t 

Transactions pending.

transactions_committed_size_sum_t 

Transactions committed total size.

transactions_ongoing_full_size_sum_t 

Transactions ongoing total full size.

transactions_ongoing_progress_size_sum_t 

Transactions ongoing total executed size.

are_transaction_pending_sizes_unknown_t 

Are transaction pending values unknown.

transactions_pending_size_sum_t 

Transactions pending total size.

events_committed_count_t 

Events scheduled.

waits_for_work_from_source_count_t 

the number of waits for work from source

waits_for_work_from_source_sum_time_t 

the time waited for work from source

waits_for_available_worker_count_t 

the number of waits for a worker to be available

waits_for_available_worker_sum_time_t 

the time waited for a worker to be available

waits_for_commit_dependency_count_t 

the number of waits on transaction dependencies

waits_for_commit_dependency_sum_time_t 

the time waited on transaction dependencies

waits_for_queues_memory_count_t 

the number of waits due to the lack of memory for queueing

waits_for_queues_memory_sum_time_t 

the time waited due to the lack of memory for queueing

waits_for_queues_full_count_t 

the number of waits when worker queues were full

waits_for_queues_full_sum_time_t 

the time waited when the worker queues were full

waits_due_to_commit_order_count_t 

The number of times workers waited for the commit order.

waits_due_to_commit_order_sum_time_t 

The total time workers waited for the commit order.

time_to_read_from_relay_log_t 

the time sum spent reading from the relay log

applier_metric_type_end 

last element of the enum, not used for any field.

This is the only enum entry that is allowed to change in new versions. Insert new fields above this one.

◆ Enum_worker_metric_type

The information for each replication worker.

Enumerator
worker_metrics_channel_name_t 

CHANNEL_NAME.

worker_id_t 

The worker id.

is_thread_id_unknown_t 

Is the thread id unknown.

thread_id_t 

The worker thread id.

transaction_type_t 

The worker transaction being worked.

transaction_ongoing_full_size_t 

The transactions ongoing total full size.

transaction_ongoing_progress_size_t 

The transaction ongoing total executed size.

worker_metric_type_end 

last element of the enum, not used for any field.

This is the only enum entry that is allowed to change in new versions. Insert new fields above this one.

◆ Worker_transaction_type

Transaction type for workers.

Encoded as a 1-based enum, matching the table definition.

Enumerator
UNKNOWN_TRX_TYPE 
DML_TRX_TYPE 
DDL_TRX_TYPE