![]() |
MySQL 8.0.43
Source Code Documentation
|
#include "sql/rpl_group_replication.h"#include <stdlib.h>#include <sys/types.h>#include <atomic>#include <mysql/components/my_service.h>#include <mysql/components/services/component_sys_var_service.h>#include <mysql/components/services/group_replication_status_service.h>#include "libbinlogevents/include/binlog_event.h"#include "m_string.h"#include "my_dbug.h"#include "my_inttypes.h"#include "my_loglevel.h"#include "my_sys.h"#include "mysql/components/services/log_builtins.h"#include "mysql/components/services/log_shared.h"#include "mysql/plugin.h"#include "mysql/plugin_group_replication.h"#include "mysql/service_mysql_alloc.h"#include "mysqld_error.h"#include "sql/clone_handler.h"#include "sql/log.h"#include "sql/mysqld.h"#include "sql/mysqld_thd_manager.h"#include "sql/replication.h"#include "sql/rpl_channel_credentials.h"#include "sql/rpl_channel_service_interface.h"#include "sql/rpl_gtid.h"#include "sql/rpl_replica.h"#include "sql/sql_class.h"#include "sql/sql_lex.h"#include "sql/sql_plugin.h"#include "sql/sql_plugin_ref.h"#include "sql/ssl_init_callback.h"#include "sql/system_variables.h"Namespaces | |
| namespace | anonymous_namespace{rpl_group_replication.cc} |
Functions | |
| REQUIRES_SERVICE_PLACEHOLDER (component_sys_variable_register) | |
| REQUIRES_SERVICE_PLACEHOLDER (component_sys_variable_unregister) | |
| int | group_replication_init () |
| Server side initializations. More... | |
| bool | is_group_replication_plugin_loaded () |
| int | group_replication_start (char **error_message, THD *thd) |
| int | group_replication_stop (char **error_message) |
| bool | is_group_replication_running () |
| bool | is_group_replication_cloning () |
| int | set_group_replication_retrieved_certification_info (View_change_log_event *view_change_event) |
| bool | get_group_replication_connection_status_info (const GROUP_REPLICATION_CONNECTION_STATUS_CALLBACKS &callbacks) |
| bool | get_group_replication_group_members_info (unsigned int index, const GROUP_REPLICATION_GROUP_MEMBERS_CALLBACKS &callbacks) |
| bool | get_group_replication_group_member_stats_info (unsigned int index, const GROUP_REPLICATION_GROUP_MEMBER_STATS_CALLBACKS &callbacks) |
| unsigned int | get_group_replication_members_number_info () |
| char * | my_strdup_nullable (OptionalString from) |
| helper function to get_server_parameters More... | |
| void | get_server_parameters (char **hostname, uint *port, char **uuid, unsigned int *out_server_version, uint *out_admin_port) |
| Returns the server hostname, port and uuid. More... | |
| void | get_server_main_ssl_parameters (st_server_ssl_variables *server_ssl_variables) |
| Returns the server's client-server interface's ssl configuration values. More... | |
| void | get_server_admin_ssl_parameters (st_server_ssl_variables *server_ssl_variables) |
| Returns the server's admin interface's ssl configuration values. More... | |
| ulong | get_server_id () |
| Returns the server_id. More... | |
| ulong | get_auto_increment_increment () |
| Returns the server auto_increment_increment. More... | |
| ulong | get_auto_increment_offset () |
| Returns the server auto_increment_offset. More... | |
| void | set_auto_increment_increment (ulong auto_increment_increment) |
| Set server auto_increment_increment. More... | |
| void | set_auto_increment_offset (ulong auto_increment_offset) |
| Set server auto_increment_offset. More... | |
| void | get_server_startup_prerequirements (Trans_context_info &requirements) |
| Returns a struct containing all server startup information needed to evaluate if one has conditions to proceed executing master-master replication. More... | |
| bool | get_server_encoded_gtid_executed (uchar **encoded_gtid_executed, size_t *length) |
| Returns the server GTID_EXECUTED encoded as a binary string. More... | |
| char * | encoded_gtid_set_to_string (uchar *encoded_gtid_set, size_t length) |
| Returns a text representation of a encoded GTID set. More... | |
| void | global_thd_manager_add_thd (THD *thd) |
| Add thread to Global_THD_manager singleton. More... | |
| void | global_thd_manager_remove_thd (THD *thd) |
| Remove thread from Global_THD_manager singleton. More... | |
| bool | is_gtid_committed (const Gtid >id) |
| Returns true if the given transaction is committed. More... | |
| bool | wait_for_gtid_set_committed (const char *gtid_set_text, double timeout, bool update_thd_status) |
| Wait until the given Gtid_set is included in @GLOBAL.GTID_EXECUTED. More... | |
| unsigned long | get_replica_max_allowed_packet () |
| Returns the value of replica_max_allowed_packet. More... | |
| unsigned long | get_max_replica_max_allowed_packet () |
| bool | is_server_restarting_after_clone () |
| bool | is_server_data_dropped () |
| std::string | get_group_replication_group_name () |
| Getter to extract the group_name in GR which, this can be used outside GR to find out the group name. More... | |
| bool | get_group_replication_view_change_uuid (std::string &uuid) |
| Getter to extract the value of variable group_replication_view_change_uuid in Group Replication. More... | |
| bool | is_group_replication_member_secondary () |
| Checks if this member is part of a group in single-primary mode and if this member is a secondary. More... | |
Variables | |
| ulong | opt_mi_repository_id |
| ulong | opt_rli_repository_id |
| std::atomic_flag | start_stop_executing = ATOMIC_FLAG_INIT |
| LEX_CSTRING | anonymous_namespace{rpl_group_replication.cc}::group_replication_plugin_name_str |
| Static name of Group Replication plugin. More... | |
| char * encoded_gtid_set_to_string | ( | uchar * | encoded_gtid_set, |
| size_t | length | ||
| ) |
Returns a text representation of a encoded GTID set.
| [in] | encoded_gtid_set | binary string |
| [in] | length | binary string length |
| ulong get_auto_increment_increment | ( | ) |
Returns the server auto_increment_increment.
| ulong get_auto_increment_offset | ( | ) |
Returns the server auto_increment_offset.
| bool get_group_replication_connection_status_info | ( | const GROUP_REPLICATION_CONNECTION_STATUS_CALLBACKS & | callbacks | ) |
| bool get_group_replication_group_member_stats_info | ( | unsigned int | index, |
| const GROUP_REPLICATION_GROUP_MEMBER_STATS_CALLBACKS & | callbacks | ||
| ) |
| bool get_group_replication_group_members_info | ( | unsigned int | index, |
| const GROUP_REPLICATION_GROUP_MEMBERS_CALLBACKS & | callbacks | ||
| ) |
| std::string get_group_replication_group_name | ( | ) |
Getter to extract the group_name in GR which, this can be used outside GR to find out the group name.
| unsigned int get_group_replication_members_number_info | ( | ) |
| bool get_group_replication_view_change_uuid | ( | std::string & | uuid | ) |
Getter to extract the value of variable group_replication_view_change_uuid in Group Replication.
If group_replication_view_change_uuid variable isn't defined or service retrieves error when getting variable it will return default value "AUTOMATIC".
| [out] | uuid | Retrieves value of variable group_replication_view_change |
| false | OK |
| true | Error |
| unsigned long get_max_replica_max_allowed_packet | ( | ) |
| unsigned long get_replica_max_allowed_packet | ( | ) |
Returns the value of replica_max_allowed_packet.
| void get_server_admin_ssl_parameters | ( | st_server_ssl_variables * | server_ssl_variables | ) |
Returns the server's admin interface's ssl configuration values.
| [out] | server_ssl_variables | server's ssl_variables |
| bool get_server_encoded_gtid_executed | ( | uchar ** | encoded_gtid_executed, |
| size_t * | length | ||
| ) |
Returns the server GTID_EXECUTED encoded as a binary string.
| [out] | encoded_gtid_executed | binary string |
| [out] | length | binary string length |
| ulong get_server_id | ( | ) |
Returns the server_id.
| void get_server_main_ssl_parameters | ( | st_server_ssl_variables * | server_ssl_variables | ) |
Returns the server's client-server interface's ssl configuration values.
| [out] | server_ssl_variables | server's ssl_variables |
| void get_server_parameters | ( | char ** | hostname, |
| uint * | port, | ||
| char ** | uuid, | ||
| unsigned int * | server_version, | ||
| uint * | admin_port | ||
| ) |
Returns the server hostname, port and uuid.
| [out] | hostname | hostname |
| [out] | port | port |
| [out] | uuid | uuid |
| [out] | server_version | server version |
| [out] | admin_port | mysqld admin port |
| void get_server_startup_prerequirements | ( | Trans_context_info & | requirements | ) |
Returns a struct containing all server startup information needed to evaluate if one has conditions to proceed executing master-master replication.
| [out] | requirements | requirements |
| void global_thd_manager_add_thd | ( | THD * | thd | ) |
Add thread to Global_THD_manager singleton.
| [in] | thd | The thread |
| void global_thd_manager_remove_thd | ( | THD * | thd | ) |
Remove thread from Global_THD_manager singleton.
| [in] | thd | The thread |
| int group_replication_init | ( | ) |
Server side initializations.
| int group_replication_start | ( | char ** | error_message, |
| THD * | thd | ||
| ) |
| int group_replication_stop | ( | char ** | error_message | ) |
| bool is_group_replication_cloning | ( | ) |
| bool is_group_replication_member_secondary | ( | ) |
Checks if this member is part of a group in single-primary mode and if this member is a secondary.
| true | this member is part of a group in single-primary mode and is a secondary |
| false | otherwise |
| bool is_group_replication_plugin_loaded | ( | ) |
| bool is_group_replication_running | ( | ) |
| bool is_gtid_committed | ( | const Gtid & | gtid | ) |
Returns true if the given transaction is committed.
| [in] | gtid | The transaction identifier |
| bool is_server_data_dropped | ( | ) |
| bool is_server_restarting_after_clone | ( | ) |
|
inline |
helper function to get_server_parameters
| REQUIRES_SERVICE_PLACEHOLDER | ( | component_sys_variable_register | ) |
| REQUIRES_SERVICE_PLACEHOLDER | ( | component_sys_variable_unregister | ) |
| void set_auto_increment_increment | ( | ulong | auto_increment_increment | ) |
Set server auto_increment_increment.
| [in] | auto_increment_increment | auto-increment increment |
| void set_auto_increment_offset | ( | ulong | auto_increment_offset | ) |
Set server auto_increment_offset.
| [in] | auto_increment_offset | auto-increment offset |
| int set_group_replication_retrieved_certification_info | ( | View_change_log_event * | view_change_event | ) |
| bool wait_for_gtid_set_committed | ( | const char * | gtid_set_text, |
| double | timeout, | ||
| bool | update_thd_status | ||
| ) |
Wait until the given Gtid_set is included in @GLOBAL.GTID_EXECUTED.
| [in] | gtid_set_text | Gtid_set to wait for. |
| [in] | timeout | The maximum number of seconds that the function should wait, or 0 to wait indefinitely. |
| [in] | update_thd_status | when true updates the stage info with the new wait condition, when false keeps the current stage info. |
| false | the Gtid_set is included in @GLOBAL.GTID_EXECUTED |
| true | otherwise |
|
extern |
|
extern |
| std::atomic_flag start_stop_executing = ATOMIC_FLAG_INIT |