26#ifndef METADATA_CACHE_CLUSTER_METADATA_GR_INCLUDED
27#define METADATA_CACHE_CLUSTER_METADATA_GR_INCLUDED
57 const bool use_cluster_notifications =
false);
91 const std::atomic<bool> &terminated,
94 bool needs_writable_node,
const std::string &clusterset_id,
95 bool whole_topology, std::size_t &instance_id)
override;
108 if (gr_notifications_listener_)
109 gr_notifications_listener_->setup(cluster_topology, callback);
115 gr_notifications_listener_.reset();
136 std::optional<std::chrono::seconds>
143 metadata_cache::ClusterTopology fetch_instances_from_metadata_server(
145 const
std::
string &cluster_type_specific_id);
158 void update_cluster_status(
metadata_cache::ManagedCluster &cluster);
163 bool &metadata_gr_discrepancy) const noexcept;
170 unsigned int router_id);
Definition: gr_notifications_listener.h:35
std::function< void()> NotificationClb
Definition: gr_notifications_listener.h:43
Definition: cluster_metadata.h:161
Definition: expected.h:944
ClusterType
Definition: cluster_metadata.h:141
Definition: gcs_xcom_synode.h:64
std::vector< T, ut::allocator< T > > vector
Specialization of vector which uses allocator.
Definition: ut0new.h:2875
std::map< Key, Value, Compare, ut::allocator< std::pair< const Key, Value > > > map
Specialization of map which uses ut_allocator.
Definition: ut0new.h:2893
std::conditional_t< !std::is_array< T >::value, std::unique_ptr< T, detail::Deleter< T > >, std::conditional_t< detail::is_unbounded_array_v< T >, std::unique_ptr< T, detail::Array_deleter< std::remove_extent_t< T > > >, void > > unique_ptr
The following is a common type that is returned by all the ut::make_unique (non-aligned) specializati...
Definition: ut0new.h:2439
required uint64 version
Definition: replication_group_member_actions.proto:41
required string type
Definition: replication_group_member_actions.proto:34
Definition: group_replication_metadata.h:38
SSL connection related options.
Definition: datatypes.h:39