MySQL 9.1.0
Source Code Documentation
s_mysql_group_replication_flow_control_metrics_service Struct Reference

A service that retrieve extra flow control stats from a member. More...

#include <group_replication_flow_control_metrics_service.h>

Public Attributes

mysql_service_status_t(* get_throttle_count )(uint64_t *counts)
 This function SHALL be called whenever the caller wants to read number of throttled transactions on this server since Group Replication start. More...
 
mysql_service_status_t(* get_throttle_time_sum )(uint64_t *time_sum)
 This function SHALL be called whenever the caller wants to read sum of time of throttled transactions on this server since Group Replication start. More...
 
mysql_service_status_t(* get_throttle_active_count )(uint64_t *active_count)
 This function SHALL be called whenever the caller wants to read number of active throttled transactions on this server. More...
 
mysql_service_status_t(* get_throttle_last_throttle_timestamp )(char *timestamp)
 This function SHALL be called whenever the caller wants to read timestamp last transaction was throttled on this server since Group Replication start. More...
 

Detailed Description

A service that retrieve extra flow control stats from a member.

This only works if the component is on a server with group replication running.

SERVICE_TYPE(registry) *plugin_registry = mysql_plugin_registry_acquire();
my_service<SERVICE_TYPE(group_replication_flow_control_metrics_service)> svc(
"group_replication_message_service_send", plugin_registry);
uint64_t value;
if (svc.is_valid()) {
bool error = svc->gr_flow_control_throttle_count(&value);
}
Wraps my_h_service struct conforming ABI into RAII C++ object with ability to cast to desired service...
Definition: my_service.h:35
#define SERVICE_TYPE(name)
Generates the standard Service type name.
Definition: service.h:76
const mysql_service_registry_t * mysql_plugin_registry_acquire()
Returns a new reference to the "registry" service.
Definition: plugin_registry_service.cc:47

Member Data Documentation

◆ get_throttle_active_count

mysql_service_status_t(* s_mysql_group_replication_flow_control_metrics_service::get_throttle_active_count) (uint64_t *active_count)

This function SHALL be called whenever the caller wants to read number of active throttled transactions on this server.

Parameters
[out]active_countnumber of active transactions being throttled
Returns
false success, true on failure. Failure can happen if not able to read values from Group Replication metrics.

◆ get_throttle_count

mysql_service_status_t(* s_mysql_group_replication_flow_control_metrics_service::get_throttle_count) (uint64_t *counts)

This function SHALL be called whenever the caller wants to read number of throttled transactions on this server since Group Replication start.

Parameters
[out]countsnumber of transactions throttled
Returns
false success, true on failure. Failure can happen if not able to read values from Group Replication metrics.

◆ get_throttle_last_throttle_timestamp

mysql_service_status_t(* s_mysql_group_replication_flow_control_metrics_service::get_throttle_last_throttle_timestamp) (char *timestamp)

This function SHALL be called whenever the caller wants to read timestamp last transaction was throttled on this server since Group Replication start.

Parameters
[out]timestampstring representation of date. Buffer shall be bigger than MAX_DATE_STRING_REP_LENGTH.
Returns
false success, true on failure. Failure can happen if not able to read values from Group Replication metrics.

◆ get_throttle_time_sum

mysql_service_status_t(* s_mysql_group_replication_flow_control_metrics_service::get_throttle_time_sum) (uint64_t *time_sum)

This function SHALL be called whenever the caller wants to read sum of time of throttled transactions on this server since Group Replication start.

Parameters
[out]time_sumtime in microseconds of transactions throttled
Returns
false success, true on failure. Failure can happen if not able to read values from Group Replication metrics.

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