![]()  | 
  
    MySQL 8.0.44
    
   Source Code Documentation 
   | 
 
#include <cluster_metadata.h>
Public Member Functions | |
| ClusterMetadataGRV2 (const MetadataSchemaVersion &schema_version, MySQLSession *mysql, mysql_harness::SocketOperationsBase *sockops=mysql_harness::SocketOperations::instance()) | |
| ~ClusterMetadataGRV2 () override=default | |
| mysqlrouter::ClusterType | get_type () override | 
| ClusterInfo | fetch_metadata_servers () override | 
| std::vector< std::string > | get_routing_mode_queries () override | 
| void | verify_router_id_is_ours (uint32_t router_id, const std::string &hostname_override="") override | 
| Checks if Router with given id is already registered in metadata database, and belongs to our machine.  More... | |
| void | update_router_info (const uint32_t router_id, const std::string &cluster_id, const std::string &target_cluster, const std::string &rw_endpoint, const std::string &ro_endpoint, const std::string &rw_x_endpoint, const std::string &ro_x_endpoint, const std::string &username) override | 
| uint32_t | register_router (const std::string &router_name, const bool overwrite, const std::string &hostname_override="") override | 
| Registers Router in metadata database.  More... | |
| std::vector< std::string > | get_grant_statements (const std::string &new_accounts) const override | 
  Public Member Functions inherited from mysqlrouter::ClusterMetadataGR | |
| ClusterMetadataGR (const MetadataSchemaVersion &schema_version, MySQLSession *mysql, mysql_harness::SocketOperationsBase *sockops=mysql_harness::SocketOperations::instance()) | |
| ~ClusterMetadataGR () override=default | |
| std::string | get_cluster_type_specific_id () override | 
| void | require_cluster_is_ok () override | 
| Verify that host is a valid cluster member (either Group Replication or ReplicaSet cluster)  More... | |
| std::vector< std::tuple< std::string, unsigned long > > | fetch_cluster_hosts () override | 
  Public Member Functions inherited from mysqlrouter::ClusterMetadata | |
| ClusterMetadata (const MetadataSchemaVersion &schema_version, MySQLSession *mysql, mysql_harness::SocketOperationsBase *sockops=mysql_harness::SocketOperations::instance()) | |
| virtual | ~ClusterMetadata ()=default | 
| virtual void | require_metadata_is_ok () | 
| Verify that host is a valid metadata server.  More... | |
| MySQLSession & | get_session () | 
| virtual uint64_t | get_view_id (const std::string &) | 
Protected Member Functions | |
| uint64_t | query_cluster_count () override | 
Additional Inherited Members | |
  Protected Attributes inherited from mysqlrouter::ClusterMetadata | |
| MySQLSession * | mysql_ | 
| mysql_harness::SocketOperationsBase * | socket_operations_ | 
| mysqlrouter::MetadataSchemaVersion | schema_version_ | 
      
  | 
  inline | 
      
  | 
  overridedefault | 
      
  | 
  overridevirtual | 
Implements mysqlrouter::ClusterMetadata.
Reimplemented in mysqlrouter::ClusterMetadataGRInClusterSet.
      
  | 
  overridevirtual | 
Implements mysqlrouter::ClusterMetadata.
      
  | 
  overridevirtual | 
Implements mysqlrouter::ClusterMetadata.
      
  | 
  inlineoverridevirtual | 
Implements mysqlrouter::ClusterMetadata.
Reimplemented in mysqlrouter::ClusterMetadataGRInClusterSet.
      
  | 
  overrideprotectedvirtual | 
Implements mysqlrouter::ClusterMetadata.
      
  | 
  overridevirtual | 
Registers Router in metadata database.
| router_name | Router name | 
| overwrite | if Router name is already registered, allow this registration to be "hijacked" instead of throwing | 
| hostname_override | If non-empty, this hostname will be used instead of getting queried from OS | 
| LocalHostnameResolutionError(std::runtime_error) | on hostname query failure, std::runtime_error on other failure | 
Implements mysqlrouter::ClusterMetadata.
      
  | 
  overridevirtual | 
Implements mysqlrouter::ClusterMetadata.
Reimplemented in mysqlrouter::ClusterMetadataGRInClusterSet.
      
  | 
  overridevirtual | 
Checks if Router with given id is already registered in metadata database, and belongs to our machine.
| router_id | Router id | 
| hostname_override | If non-empty, this hostname will be used instead of getting queried from OS | 
| LocalHostnameResolutionError(std::runtime_error) | on hostname query failure | 
| std::runtime_error | if router_id doesn't exist, or is associated with a different host | 
| MySQLSession::Error(std::runtime_error) | on database error | 
Implements mysqlrouter::ClusterMetadata.