103 lines
4.2 KiB
Plaintext
103 lines
4.2 KiB
Plaintext
include/group_replication.inc [rpl_server_count=3]
|
|
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]
|
|
[connection server1]
|
|
# Adding debug point 'register_gms_listener_example' to @@GLOBAL.debug
|
|
[connection server2]
|
|
# Adding debug point 'register_gms_listener_example' to @@GLOBAL.debug
|
|
SET SQL_LOG_BIN=0;
|
|
CREATE TABLE test.gms_listener_example(log_message TEXT);
|
|
SET SQL_LOG_BIN=1;
|
|
[connection server3]
|
|
# Adding debug point 'register_gms_listener_example' to @@GLOBAL.debug
|
|
SET SQL_LOG_BIN=0;
|
|
CREATE TABLE test.gms_listener_example(log_message TEXT);
|
|
SET SQL_LOG_BIN=1;
|
|
### Scenario 7: SERVER UNREACHABLE
|
|
### Expected:
|
|
### - Correct Servers: 1 STATE CHANGED (and eventually a VIEW CHANGED)
|
|
### - Failed server: N/A
|
|
##########################################################
|
|
[connection server1]
|
|
include/start_and_bootstrap_group_replication.inc
|
|
[connection server2]
|
|
include/start_group_replication.inc
|
|
[connection server3]
|
|
include/start_group_replication.inc
|
|
include/rpl_gr_wait_for_number_of_members.inc
|
|
[connection server2]
|
|
include/rpl_gr_wait_for_number_of_members.inc
|
|
[connection server1]
|
|
include/rpl_gr_wait_for_number_of_members.inc
|
|
TRUNCATE gms_listener_example;
|
|
CREATE TABLE t1 (c1 INT NOT NULL PRIMARY KEY) ENGINE=InnoDB;
|
|
include/rpl_sync.inc
|
|
[connection server_3]
|
|
[connection server3]
|
|
[connection server_3]
|
|
[connection server1]
|
|
include/rpl_gr_wait_for_number_of_members.inc
|
|
include/assert.inc [Assert that there are 1 notifications logged of type STATE %:3]
|
|
include/assert.inc [Assert that there are 1 notifications logged of type VIEW %:4]
|
|
include/assert.inc [Assert that there are 2 notifications logged]
|
|
[Truncating gms_listener_example Table]
|
|
### Scenario 8: MAJORITY UNREACHABLE
|
|
### Expected:
|
|
### - Correct Servers: 1 QUORUM LOST, 1 STATE CHANGED
|
|
### - Failed Servers: N/A
|
|
##########################################################
|
|
[connection server_2]
|
|
[connection server2]
|
|
[connection server_2]
|
|
[connection server1]
|
|
include/gr_wait_for_member_state.inc
|
|
include/assert.inc [Assert that there are 1 notifications logged of type QUORUM LOST: %:4]
|
|
include/assert.inc [Assert that there are 1 notifications logged of type STATE %:4]
|
|
include/assert.inc [Assert that there are 2 notifications logged]
|
|
[Truncating gms_listener_example Table]
|
|
### Scenario 9: MAJORITY UNREACHABLE + FORCE MEMBERS
|
|
### Expected:
|
|
### - Correct Servers: 1 VIEW CHANGED
|
|
### - Failed Servers: N/A
|
|
##########################################################
|
|
[connection server_1]
|
|
include/assert.inc [group_replication_force_members is correct]
|
|
include/rpl_gr_wait_for_number_of_members.inc
|
|
include/assert.inc [No more unreachable servers in the P_S table.]
|
|
include/assert.inc [Assert that there are 1 notifications logged of type VIEW %:5]
|
|
include/assert.inc [Assert that there are 1 notifications logged]
|
|
[Truncating gms_listener_example Table]
|
|
include/stop_group_replication.inc
|
|
### Scenario 10: MAJORITY UNREACHABLE + STOP
|
|
### Expected:
|
|
### - Correct Servers: 1 VIEW CHANGED, 1 STATE CHANGED
|
|
### - Failed Servers: N/A
|
|
##########################################################
|
|
[connection server1]
|
|
include/start_and_bootstrap_group_replication.inc
|
|
[connection server2]
|
|
include/start_group_replication.inc
|
|
[connection server_2]
|
|
[connection server2]
|
|
[connection server_2]
|
|
[connection server1]
|
|
include/gr_wait_for_member_state.inc
|
|
include/stop_group_replication.inc
|
|
include/assert.inc [Assert that there are 1 notifications logged of type VIEW %: ]
|
|
include/assert.inc [Assert that there are 1 notifications logged of type STATE %:%]
|
|
include/assert.inc [Assert that there are 2 notifications logged]
|
|
[Truncating gms_listener_example Table]
|
|
[connection server1]
|
|
# Removing debug point 'register_gms_listener_example' from @@GLOBAL.debug
|
|
include/start_and_bootstrap_group_replication.inc
|
|
[connection server2]
|
|
include/start_group_replication.inc
|
|
[connection server3]
|
|
include/start_group_replication.inc
|
|
[connection server1]
|
|
DROP TABLE gms_listener_example;
|
|
include/rpl_sync.inc
|
|
include/group_replication_end.inc
|