File: gr_notifications_join_leave.result

package info (click to toggle)
mysql-8.0 8.0.43-3
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 1,273,924 kB
  • sloc: cpp: 4,684,605; ansic: 412,450; pascal: 108,398; java: 83,641; perl: 30,221; cs: 27,067; sql: 26,594; sh: 24,181; python: 21,816; yacc: 17,169; php: 11,522; xml: 7,388; javascript: 7,076; makefile: 2,194; lex: 1,075; awk: 670; asm: 520; objc: 183; ruby: 97; lisp: 86
file content (109 lines) | stat: -rw-r--r-- 5,527 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
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 connection metadata repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START REPLICA; see the 'START REPLICA Syntax' in the MySQL Manual for more information.
[connection server1]
[connection server1]
# 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 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;
### Scenario 1: SERVER BOOTSTRAPS GROUP
### Expected:
### - Myself: 1 VIEW CHANGED, 2 STATE CHANGED
### - Others: N/A
##########################################################################
[connection server1]
include/start_and_bootstrap_group_replication.inc
include/assert.inc [Assert that there are 1 notifications logged of type VIEW %:1]
include/assert.inc [Assert that there are 2 notifications logged of type STATE %:1]
include/assert.inc [Assert that there are 3 notifications logged]
[Truncating gms_listener_example Table]
### Scenario 2: MEMBER JOINS, but blocks recoverying
### Expected:
### - Myself: 1 VIEW CHANGED, 1 STATE CHANGED
### - Others: 1 VIEW CHANGED, 1 STATE CHANGED
##########################################################################
[connection server2]
SET @@GLOBAL.DEBUG='+d,recovery_thread_wait_before_finish';
include/start_group_replication.inc
include/assert.inc [Assert that there are 1 notifications logged of type VIEW %:2]
include/assert.inc [Assert that there are 1 notifications logged of type STATE %:2]
include/assert.inc [Assert that there are 2 notifications logged]
[Truncating gms_listener_example Table]
[connection server1]
include/assert.inc [Assert that there are 1 notifications logged of type VIEW %:2]
include/assert.inc [Assert that there are 1 notifications logged of type STATE %:2]
include/assert.inc [Assert that there are 2 notifications logged]
[Truncating gms_listener_example Table]
### Scenario 3: MEMBER RECOVERS JOINS
### Expected:
### - Myself: 1 STATE CHANGED
### - Others: 1 STATE CHANGED
##########################################################################
[connection server2]
SET DEBUG_SYNC= "now WAIT_FOR signal.recovery_thread_wait_before_finish_reached";
SET @@GLOBAL.DEBUG='-d,recovery_thread_wait_before_finish';
SET DEBUG_SYNC= "now SIGNAL signal.recovery_end";
include/gr_wait_for_member_state.inc
include/assert.inc [Assert that there are 1 notifications logged of type STATE %:2]
include/assert.inc [Assert that there are 1 notifications logged]
[Truncating gms_listener_example Table]
[connection server1]
include/assert.inc [Assert that there are 1 notifications logged of type STATE %:2]
include/assert.inc [Assert that there are 1 notifications logged]
[Truncating gms_listener_example Table]
### Scenario 4: SERVER LEAVES(ERROR), SERVER LEAVES(OFFLINE)
### Expected:
### - Myself (leaving): 1 VIEW CHANGED, 1 STATE CHANGED
### - Others: 1 VIEW CHANGED
##########################################################################
[connection server2]
SET SESSION sql_log_bin=0;
call mtr.add_suppression("Table 'tab1' already exists");
call mtr.add_suppression("The applier thread execution was aborted. Unable to process more transactions, this member will now leave the group");
call mtr.add_suppression("Fatal error during execution on the Applier process of Group Replication. The server will now leave the group.");
call mtr.add_suppression("The server was automatically set into read only mode after an error was detected.");
call mtr.add_suppression("Replica SQL for channel 'group_replication_applier': ... The replica coordinator and worker threads are stopped,*");
SET SESSION sql_log_bin=1;
SET SESSION sql_log_bin=0;
CREATE TABLE test.tab1 (a INT PRIMARY KEY);
SET SESSION sql_log_bin=1;
[connection server1]
CREATE TABLE test.tab1 (a INT PRIMARY KEY);
[connection server2]
include/gr_wait_for_member_state.inc
include/assert.inc [Assert that there are 1 notifications logged of type STATE %:%]
include/assert.inc [Assert that there are 1 notifications logged of type VIEW %:%]
include/assert.inc [Assert that there are 2 notifications logged]
[Truncating gms_listener_example Table]
[connection server1]
include/assert.inc [Assert that there are 1 notifications logged of type VIEW %:3]
include/assert.inc [Assert that there are 1 notifications logged]
[Truncating gms_listener_example Table]
[connection server2]
include/stop_group_replication.inc
include/gr_wait_for_member_state.inc
include/assert.inc [Assert that there are 1 notifications logged of type STATE %:%]
include/assert.inc [Assert that there are 1 notifications logged]
[Truncating gms_listener_example Table]
SET SESSION sql_log_bin=0;
DROP TABLE test.tab1;
SET SESSION sql_log_bin=1;
[connection server1]
include/stop_group_replication.inc
# Removing debug point 'register_gms_listener_example' from @@GLOBAL.debug
include/start_and_bootstrap_group_replication.inc
[connection server2]
# Removing debug point 'register_gms_listener_example' from @@GLOBAL.debug
SET DEBUG_SYNC= 'RESET';
include/start_group_replication.inc
DROP TABLE gms_listener_example;
DROP TABLE test.tab1;
include/rpl_sync.inc
include/group_replication_end.inc