MySQL 8.3.0
Source Code Documentation
dest_metadata_cache.cc File Reference
#include "dest_metadata_cache.h"
#include <algorithm>
#include <cctype>
#include <chrono>
#include <iterator>
#include <memory>
#include <mutex>
#include <set>
#include <stdexcept>
#include <string>
#include <string_view>
#include <system_error>
#include "mysql/harness/logging/logging.h"
#include "mysql/harness/plugin.h"
#include "mysqlrouter/destination.h"
#include "mysqlrouter/routing.h"
#include "tcp_address.h"

Classes

class  MetadataCacheDestination
 

Namespaces

 

Functions

DestMetadataCacheGroup::ServerRole get_server_role_from_uri (const mysqlrouter::URIQuery &uri)
 
std::string anonymous_namespace{dest_metadata_cache.cc}::get_server_role_name (const DestMetadataCacheGroup::ServerRole role)
 
routing::RoutingStrategy anonymous_namespace{dest_metadata_cache.cc}::get_default_routing_strategy (const DestMetadataCacheGroup::ServerRole role)
 
bool anonymous_namespace{dest_metadata_cache.cc}::mode_is_valid (const routing::Mode mode, const DestMetadataCacheGroup::ServerRole role)
 check that mode (if present) is correct for the role More...
 
bool anonymous_namespace{dest_metadata_cache.cc}::get_yes_no_option (const mysqlrouter::URIQuery &uri, const std::string &option_name, const bool defalut_res, const std::function< void()> &check_option_allowed)
 
bool anonymous_namespace{dest_metadata_cache.cc}::get_disconnect_on_promoted_to_primary (const mysqlrouter::URIQuery &uri, const DestMetadataCacheGroup::ServerRole &role)
 
bool anonymous_namespace{dest_metadata_cache.cc}::get_disconnect_on_metadata_unavailable (const mysqlrouter::URIQuery &uri)
 

Variables

static const auto kPrimaryFailoverTimeout = 10s
 
static const std::set< std::string > supported_params
 
constexpr const std::array< std::pair< std::string_view, DestMetadataCacheGroup::ServerRole >, 3 > anonymous_namespace{dest_metadata_cache.cc}::known_roles
 

Function Documentation

◆ get_server_role_from_uri()

DestMetadataCacheGroup::ServerRole get_server_role_from_uri ( const mysqlrouter::URIQuery uri)

Variable Documentation

◆ kPrimaryFailoverTimeout

const auto kPrimaryFailoverTimeout = 10s
static

◆ supported_params

const std::set<std::string> supported_params
static
Initial value:
{
"role", "allow_primary_reads", "disconnect_on_promoted_to_primary",
"disconnect_on_metadata_unavailable"}