26#ifndef METADATA_CACHE_CLUSTER_METADATA_INCLUDED
27#define METADATA_CACHE_CLUSTER_METADATA_INCLUDED
98 &metadata_server)
noexcept override;
103 void disconnect() noexcept
override { metadata_connection_.reset(); }
108 return metadata_connection_;
113 const unsigned router_id,
118 const unsigned router_id)
override;
122 const unsigned router_id)
override;
129 const uint16_t router_id)
override;
134 std::optional<metadata_cache::metadata_server_t> find_rw_server(
135 const std::vector<metadata_cache::ManagedInstance> &instances);
137 std::optional<metadata_cache::metadata_server_t> find_rw_server(
138 const std::vector<metadata_cache::ManagedCluster> &clusters);
140 std::optional<std::chrono::seconds>
142 return router_options_.get_stats_updates_frequency();
159 const uint16_t router_id) {
161 return R
"(SELECT guideline FROM
162mysql_innodb_cluster_metadata.routing_guidelines WHERE guideline_id = (
163 SELECT COALESCE(RO.router_options->>'$.guideline',
164 CS.router_options->>'$.guideline',
165 CL.router_options->>'$.guideline')
167 mysql_innodb_cluster_metadata.v2_router_options AS RO
169 mysql_innodb_cluster_metadata.clustersets AS CS ON RO.clusterset_id = CS.clusterset_id
171 mysql_innodb_cluster_metadata.clusters AS CL ON RO.cluster_id = CL.cluster_id
172 WHERE RO.router_id = )" +
189 int connection_attempts_;
199std::string
as_string(
const char *input_str);
203 const size_t classic_port_column,
204 const size_t x_port_column);
207 const std::string &attributes);
Represents the Router options in v2_routers view in the metadata schema.
Definition: router_options.h:58
Definition: destination.h:40
Definition: mysql_session.h:154
std::vector< const char * > Row
Definition: mysql_session.h:158
Definition: cluster_metadata.h:135
Definition: expected.h:286
mysql_ssl_mode
Definition: mysql.h:272
static void do_connect(struct st_command *command)
Definition: mysqltest.cc:6704
std::error_code make_error_code(DynamicLoaderErrc ec)
make error_code from a DynamicLoaderErrc.
Definition: dynamic_loader.cc:79
constexpr MetadataSchemaVersion kRoutingGuidelinesMetadataVersion
Definition: cluster_metadata.h:62
std::string ROUTER_CLUSTER_EXPORT to_string(const TargetCluster::InvalidatedClusterRoutingPolicy)
Definition: cluster_metadata.cc:1402
unexpected(E) -> unexpected< E >
Definition: cluster_metadata.h:51
Definition: group_replication_metadata.h:38
SSL connection related options.
Definition: datatypes.h:34