MySQL 9.1.0
Source Code Documentation
|
#include <plugin_config.h>
Public Member Functions | |
MetadataCachePluginConfig (const mysql_harness::ConfigSection *section) | |
Constructor. More... | |
std::string | get_default (std::string_view option) const override |
bool | is_required (std::string_view option) const override |
Returns whether the given option is required. More... | |
std::string | get_cluster_type_specific_id () const |
Gets (Group Replication ID for GR cluster or cluster_id for ReplicaSet cluster) if preset in the dynamic configuration. More... | |
std::string | get_clusterset_id () const |
uint64_t | get_view_id () const |
Gets last know ReplicaSet cluster metadata view_id stored in the dynamic state file . More... | |
void | expose_configuration (const mysql_harness::ConfigSection &default_section, const bool initial) const |
Public Member Functions inherited from mysql_harness::BasePluginConfig | |
BasePluginConfig ()=default | |
BasePluginConfig (const BasePluginConfig &)=default | |
BasePluginConfig (BasePluginConfig &&)=default | |
BasePluginConfig & | operator= (const BasePluginConfig &)=default |
BasePluginConfig & | operator= (BasePluginConfig &&)=default |
virtual | ~BasePluginConfig ()=default |
destructor More... | |
std::string | get_option_description (const mysql_harness::ConfigSection *section, std::string_view option) const |
get description of the option. More... | |
template<class Func > | |
decltype(auto) | get_option (const mysql_harness::ConfigSection *section, std::string_view option, Func &&transformer) const |
get option value. More... | |
template<class Func > | |
decltype(auto) | get_option_no_default (const mysql_harness::ConfigSection *section, std::string_view option, Func &&transformer) const |
get option value. More... | |
std::string | get_option_string (const mysql_harness::ConfigSection *section, std::string_view option) const |
Gets value of given option as string. More... | |
template<class T > | |
T | get_uint_option (const mysql_harness::ConfigSection *section, std::string_view option, T min_value=0, T max_value=std::numeric_limits< T >::max()) const |
Gets an unsigned integer using the given option. More... | |
std::chrono::milliseconds | get_option_milliseconds (const mysql_harness::ConfigSection *section, std::string_view option, double min_value=0.0, double max_value=std::numeric_limits< double >::max()) const |
Gets a number of milliseconds using the given option. More... | |
Public Attributes | |
std::unique_ptr< ClusterMetadataDynamicState > | metadata_cache_dynamic_state |
const metadata_cache::metadata_servers_list_t | metadata_servers_addresses |
MySQL Metadata hosts to connect with. More... | |
std::string | user |
User used for authenticating with MySQL Metadata. More... | |
std::chrono::milliseconds | ttl |
TTL used for storing data in the cache. More... | |
std::chrono::milliseconds | auth_cache_ttl |
TTL used for limiting the lifetime of the rest user authentication data stored in the metadata. More... | |
std::chrono::milliseconds | auth_cache_refresh_interval |
Refresh rate of the rest user authentication data stored in the cache. More... | |
std::string | cluster_name |
Name of the Cluster this Router instance was bootstrapped to use. More... | |
unsigned int | connect_timeout |
connect_timeout The time in seconds after which trying to connect to metadata server timeouts More... | |
unsigned int | read_timeout |
read_timeout The time in seconds after which read from metadata server timeouts More... | |
unsigned int | thread_stack_size |
memory in kilobytes allocated for thread's stack More... | |
bool | use_gr_notifications |
Whether we should listen to GR notifications from the cluster nodes. More... | |
mysqlrouter::ClusterType | cluster_type |
Type of the cluster this configuration was bootstrap against. More... | |
unsigned int | router_id |
Id of the router in the metadata. More... | |
mysqlrouter::SSLOptions | ssl_options |
SSL settings for metadata cache connection. More... | |
std::string | target_cluster |
mysqlrouter::TargetCluster::InvalidatedClusterRoutingPolicy | invalidated_cluster_policy {kDefautlInvalidatedClusterRoutingPolicy} |
bool | use_replica_primary_as_rw {false} |
QuorumConnectionLostAllowTraffic | unreachable_quorum_allowed_traffic |
std::chrono::seconds | stats_updates_frequency {std::chrono::seconds(-1)} |
ReadOnlyTargets | read_only_targets {kDefaultReadOnlyTargets} |
Private Member Functions | |
std::vector< mysql_harness::TCPAddress > | get_metadata_servers (uint16_t default_port) const |
Gets a list of metadata servers. More... | |
mysqlrouter::ClusterType | get_cluster_type (const mysql_harness::ConfigSection *section) |
std::unique_ptr< ClusterMetadataDynamicState > | get_dynamic_state (const mysql_harness::ConfigSection *section) |
Additional Inherited Members | |
Protected Member Functions inherited from mysql_harness::BasePluginConfig | |
BasePluginConfig (const mysql_harness::ConfigSection *section) | |
Constructor for derived classes. More... | |
Static Protected Member Functions inherited from mysql_harness::BasePluginConfig | |
static std::string | get_section_name (const mysql_harness::ConfigSection *section) |
Generate the name for this configuration. More... | |
MetadataCachePluginConfig::MetadataCachePluginConfig | ( | const mysql_harness::ConfigSection * | section | ) |
Constructor.
section | from configuration file provided as ConfigSection |
void MetadataCachePluginConfig::expose_configuration | ( | const mysql_harness::ConfigSection & | default_section, |
const bool | initial | ||
) | const |
|
private |
std::string MetadataCachePluginConfig::get_cluster_type_specific_id | ( | ) | const |
Gets (Group Replication ID for GR cluster or cluster_id for ReplicaSet cluster) if preset in the dynamic configuration.
std::string MetadataCachePluginConfig::get_clusterset_id | ( | ) | const |
|
overridevirtual |
option | name of the option |
Implements mysql_harness::BasePluginConfig.
|
private |
|
private |
Gets a list of metadata servers.
Throws std::invalid_argument on errors.
default_port | Use this port when none was provided |
uint64_t MetadataCachePluginConfig::get_view_id | ( | ) | const |
Gets last know ReplicaSet cluster metadata view_id stored in the dynamic state file .
|
overridevirtual |
Returns whether the given option is required.
Implements mysql_harness::BasePluginConfig.
std::chrono::milliseconds MetadataCachePluginConfig::auth_cache_refresh_interval |
Refresh rate of the rest user authentication data stored in the cache.
std::chrono::milliseconds MetadataCachePluginConfig::auth_cache_ttl |
TTL used for limiting the lifetime of the rest user authentication data stored in the metadata.
std::string MetadataCachePluginConfig::cluster_name |
Name of the Cluster this Router instance was bootstrapped to use.
mysqlrouter::ClusterType MetadataCachePluginConfig::cluster_type |
Type of the cluster this configuration was bootstrap against.
unsigned int MetadataCachePluginConfig::connect_timeout |
connect_timeout The time in seconds after which trying to connect to metadata server timeouts
mysqlrouter::TargetCluster::InvalidatedClusterRoutingPolicy MetadataCachePluginConfig::invalidated_cluster_policy {kDefautlInvalidatedClusterRoutingPolicy} |
|
mutable |
const metadata_cache::metadata_servers_list_t MetadataCachePluginConfig::metadata_servers_addresses |
MySQL Metadata hosts to connect with.
ReadOnlyTargets MetadataCachePluginConfig::read_only_targets {kDefaultReadOnlyTargets} |
unsigned int MetadataCachePluginConfig::read_timeout |
read_timeout The time in seconds after which read from metadata server timeouts
unsigned int MetadataCachePluginConfig::router_id |
Id of the router in the metadata.
mysqlrouter::SSLOptions MetadataCachePluginConfig::ssl_options |
SSL settings for metadata cache connection.
std::chrono::seconds MetadataCachePluginConfig::stats_updates_frequency {std::chrono::seconds(-1)} |
std::string MetadataCachePluginConfig::target_cluster |
unsigned int MetadataCachePluginConfig::thread_stack_size |
memory in kilobytes allocated for thread's stack
std::chrono::milliseconds MetadataCachePluginConfig::ttl |
TTL used for storing data in the cache.
QuorumConnectionLostAllowTraffic MetadataCachePluginConfig::unreachable_quorum_allowed_traffic |
bool MetadataCachePluginConfig::use_gr_notifications |
Whether we should listen to GR notifications from the cluster nodes.
bool MetadataCachePluginConfig::use_replica_primary_as_rw {false} |
std::string MetadataCachePluginConfig::user |
User used for authenticating with MySQL Metadata.