include/group_replication.inc Warnings: Note #### Sending passwords in plain text without SSL/TLS is extremely insecure. Note #### Storing MySQL user name or password information in the master info repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START SLAVE; see the 'START SLAVE Syntax' in the MySQL Manual for more information. [connection server1] ############################################################ # 0. Check that there are no persisted variables. [connection server1] include/assert.inc ['Expect 0 persisted variables.'] ############################################################ # 1. Test SET PERSIST. Verify persisted variables. SET GLOBAL group_replication_group_name= "GROUP_REPLICATION_GROUP_NAME"; SET GLOBAL group_replication_start_on_boot= ON; SET GLOBAL group_replication_bootstrap_group= ON; CREATE TABLE grvars (id INT PRIMARY KEY AUTO_INCREMENT, varname VARCHAR(64), varvalue VARCHAR(256)); INSERT INTO grvars (varname, varvalue) SELECT * FROM performance_schema.global_variables WHERE VARIABLE_NAME LIKE '%group_replication%' ORDER BY VARIABLE_NAME; SET PERSIST group_replication_allow_local_lower_version_join = @@GLOBAL.group_replication_allow_local_lower_version_join; SET PERSIST group_replication_auto_increment_increment = @@GLOBAL.group_replication_auto_increment_increment; SET PERSIST group_replication_autorejoin_tries = @@GLOBAL.group_replication_autorejoin_tries; SET PERSIST group_replication_bootstrap_group = @@GLOBAL.group_replication_bootstrap_group; SET PERSIST group_replication_clone_threshold = @@GLOBAL.group_replication_clone_threshold; SET PERSIST group_replication_communication_debug_options = @@GLOBAL.group_replication_communication_debug_options; SET PERSIST group_replication_communication_max_message_size = @@GLOBAL.group_replication_communication_max_message_size; SET PERSIST group_replication_components_stop_timeout = @@GLOBAL.group_replication_components_stop_timeout; SET PERSIST group_replication_compression_threshold = @@GLOBAL.group_replication_compression_threshold; SET PERSIST group_replication_consistency = @@GLOBAL.group_replication_consistency; SET PERSIST group_replication_enforce_update_everywhere_checks = @@GLOBAL.group_replication_enforce_update_everywhere_checks; SET PERSIST group_replication_exit_state_action = @@GLOBAL.group_replication_exit_state_action; SET PERSIST group_replication_flow_control_applier_threshold = @@GLOBAL.group_replication_flow_control_applier_threshold; SET PERSIST group_replication_flow_control_certifier_threshold = @@GLOBAL.group_replication_flow_control_certifier_threshold; SET PERSIST group_replication_flow_control_hold_percent = @@GLOBAL.group_replication_flow_control_hold_percent; SET PERSIST group_replication_flow_control_max_quota = @@GLOBAL.group_replication_flow_control_max_quota; SET PERSIST group_replication_flow_control_member_quota_percent = @@GLOBAL.group_replication_flow_control_member_quota_percent; SET PERSIST group_replication_flow_control_min_quota = @@GLOBAL.group_replication_flow_control_min_quota; SET PERSIST group_replication_flow_control_min_recovery_quota = @@GLOBAL.group_replication_flow_control_min_recovery_quota; SET PERSIST group_replication_flow_control_mode = @@GLOBAL.group_replication_flow_control_mode; SET PERSIST group_replication_flow_control_period = @@GLOBAL.group_replication_flow_control_period; SET PERSIST group_replication_flow_control_release_percent = @@GLOBAL.group_replication_flow_control_release_percent; SET PERSIST group_replication_force_members = @@GLOBAL.group_replication_force_members; SET PERSIST group_replication_group_name = @@GLOBAL.group_replication_group_name; SET PERSIST group_replication_group_seeds = @@GLOBAL.group_replication_group_seeds; SET PERSIST group_replication_gtid_assignment_block_size = @@GLOBAL.group_replication_gtid_assignment_block_size; SET PERSIST group_replication_ip_whitelist = @@GLOBAL.group_replication_ip_whitelist; SET PERSIST group_replication_local_address = @@GLOBAL.group_replication_local_address; SET PERSIST group_replication_member_expel_timeout = @@GLOBAL.group_replication_member_expel_timeout; SET PERSIST group_replication_member_weight = @@GLOBAL.group_replication_member_weight; SET PERSIST group_replication_message_cache_size = @@GLOBAL.group_replication_message_cache_size; SET PERSIST group_replication_poll_spin_loops = @@GLOBAL.group_replication_poll_spin_loops; SET PERSIST group_replication_recovery_complete_at = @@GLOBAL.group_replication_recovery_complete_at; SET PERSIST group_replication_recovery_compression_algorithms = @@GLOBAL.group_replication_recovery_compression_algorithms; SET PERSIST group_replication_recovery_get_public_key = @@GLOBAL.group_replication_recovery_get_public_key; SET PERSIST group_replication_recovery_public_key_path = @@GLOBAL.group_replication_recovery_public_key_path; SET PERSIST group_replication_recovery_reconnect_interval = @@GLOBAL.group_replication_recovery_reconnect_interval; SET PERSIST group_replication_recovery_retry_count = @@GLOBAL.group_replication_recovery_retry_count; SET PERSIST group_replication_recovery_ssl_ca = @@GLOBAL.group_replication_recovery_ssl_ca; SET PERSIST group_replication_recovery_ssl_capath = @@GLOBAL.group_replication_recovery_ssl_capath; SET PERSIST group_replication_recovery_ssl_cert = @@GLOBAL.group_replication_recovery_ssl_cert; SET PERSIST group_replication_recovery_ssl_cipher = @@GLOBAL.group_replication_recovery_ssl_cipher; SET PERSIST group_replication_recovery_ssl_crl = @@GLOBAL.group_replication_recovery_ssl_crl; SET PERSIST group_replication_recovery_ssl_crlpath = @@GLOBAL.group_replication_recovery_ssl_crlpath; SET PERSIST group_replication_recovery_ssl_key = @@GLOBAL.group_replication_recovery_ssl_key; SET PERSIST group_replication_recovery_ssl_verify_server_cert = @@GLOBAL.group_replication_recovery_ssl_verify_server_cert; SET PERSIST group_replication_recovery_use_ssl = @@GLOBAL.group_replication_recovery_use_ssl; SET PERSIST group_replication_recovery_zstd_compression_level = @@GLOBAL.group_replication_recovery_zstd_compression_level; SET PERSIST group_replication_single_primary_mode = @@GLOBAL.group_replication_single_primary_mode; SET PERSIST group_replication_ssl_mode = @@GLOBAL.group_replication_ssl_mode; SET PERSIST group_replication_start_on_boot = @@GLOBAL.group_replication_start_on_boot; SET PERSIST group_replication_transaction_size_limit = @@GLOBAL.group_replication_transaction_size_limit; SET PERSIST group_replication_unreachable_majority_timeout = @@GLOBAL.group_replication_unreachable_majority_timeout; include/assert.inc ['Expect 53 persisted variables.'] ############################################################ # 2. Restart server, it must bootstrap the group and preserve # the persisted settings. Verify persisted configuration. # restart include/rpl_reconnect.inc include/gr_wait_for_member_state.inc include/assert.inc ['Expect 53 persisted variables in persisted_variables table.'] include/assert.inc ['Expect 53 persisted variables shown as PERSISTED in variables_info table.'] include/assert.inc ['Expect 53 persisted variables with matching persisted and global values.'] ############################################################ # 3. Test RESET PERSIST. # Verify that there are no persisted variables. RESET PERSIST group_replication_allow_local_lower_version_join; RESET PERSIST group_replication_auto_increment_increment; RESET PERSIST group_replication_autorejoin_tries; RESET PERSIST group_replication_bootstrap_group; RESET PERSIST group_replication_clone_threshold; RESET PERSIST group_replication_communication_debug_options; RESET PERSIST group_replication_communication_max_message_size; RESET PERSIST group_replication_components_stop_timeout; RESET PERSIST group_replication_compression_threshold; RESET PERSIST group_replication_consistency; RESET PERSIST group_replication_enforce_update_everywhere_checks; RESET PERSIST group_replication_exit_state_action; RESET PERSIST group_replication_flow_control_applier_threshold; RESET PERSIST group_replication_flow_control_certifier_threshold; RESET PERSIST group_replication_flow_control_hold_percent; RESET PERSIST group_replication_flow_control_max_quota; RESET PERSIST group_replication_flow_control_member_quota_percent; RESET PERSIST group_replication_flow_control_min_quota; RESET PERSIST group_replication_flow_control_min_recovery_quota; RESET PERSIST group_replication_flow_control_mode; RESET PERSIST group_replication_flow_control_period; RESET PERSIST group_replication_flow_control_release_percent; RESET PERSIST group_replication_force_members; RESET PERSIST group_replication_group_name; RESET PERSIST group_replication_group_seeds; RESET PERSIST group_replication_gtid_assignment_block_size; RESET PERSIST group_replication_ip_whitelist; RESET PERSIST group_replication_local_address; RESET PERSIST group_replication_member_expel_timeout; RESET PERSIST group_replication_member_weight; RESET PERSIST group_replication_message_cache_size; RESET PERSIST group_replication_poll_spin_loops; RESET PERSIST group_replication_recovery_complete_at; RESET PERSIST group_replication_recovery_compression_algorithms; RESET PERSIST group_replication_recovery_get_public_key; RESET PERSIST group_replication_recovery_public_key_path; RESET PERSIST group_replication_recovery_reconnect_interval; RESET PERSIST group_replication_recovery_retry_count; RESET PERSIST group_replication_recovery_ssl_ca; RESET PERSIST group_replication_recovery_ssl_capath; RESET PERSIST group_replication_recovery_ssl_cert; RESET PERSIST group_replication_recovery_ssl_cipher; RESET PERSIST group_replication_recovery_ssl_crl; RESET PERSIST group_replication_recovery_ssl_crlpath; RESET PERSIST group_replication_recovery_ssl_key; RESET PERSIST group_replication_recovery_ssl_verify_server_cert; RESET PERSIST group_replication_recovery_use_ssl; RESET PERSIST group_replication_recovery_zstd_compression_level; RESET PERSIST group_replication_single_primary_mode; RESET PERSIST group_replication_ssl_mode; RESET PERSIST group_replication_start_on_boot; RESET PERSIST group_replication_transaction_size_limit; RESET PERSIST group_replication_unreachable_majority_timeout; include/assert.inc ['Expect 0 persisted variables.'] ############################################################ # 4. Clean up. SET GLOBAL group_replication_start_on_boot= OFF; SET GLOBAL group_replication_bootstrap_group= OFF; DROP TABLE grvars; include/group_replication_end.inc