File: gr_primary_mode_group_operations_11.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 (55 lines) | stat: -rw-r--r-- 2,826 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
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]

# 1. Enable debug point to block action
SET @@GLOBAL.DEBUG= '+d,group_replication_block_group_action';

# 2. Execute a switch to single primary mode on server1
SELECT group_replication_switch_to_single_primary_mode("MEMBER1_UUID");

# 3. Execute parallel group action on server2 that must fail
#    due to already one operation is being executed
[connection server2]

# Execute a switch to single primary mode that must fail
SELECT group_replication_switch_to_single_primary_mode("MEMBER2_UUID");
ERROR HY000: The function 'group_replication_switch_to_single_primary_mode' failed. There is already a configuration action being executed. Wait for it to finish.

SELECT group_replication_switch_to_single_primary_mode("MEMBER1_UUID");
ERROR HY000: The function 'group_replication_switch_to_single_primary_mode' failed. There is already a configuration action being executed. Wait for it to finish.

SELECT group_replication_switch_to_single_primary_mode();
ERROR HY000: The function 'group_replication_switch_to_single_primary_mode' failed. There is already a configuration action being executed. Wait for it to finish.

# Execute a switch to multi primary mode that must be no-op
SELECT group_replication_switch_to_multi_primary_mode();
group_replication_switch_to_multi_primary_mode()
The group is already on multi-primary mode.

# Execute a set primary that must fail as can't initialize
SELECT group_replication_set_as_primary("MEMBER2_UUID");
ERROR HY000: Can't initialize function 'group_replication_set_as_primary'; In multi-primary mode. Use group_replication_switch_to_single_primary_mode.

SELECT group_replication_set_as_primary("MEMBER1_UUID");
ERROR HY000: Can't initialize function 'group_replication_set_as_primary'; In multi-primary mode. Use group_replication_switch_to_single_primary_mode.

# Add suppression
set session sql_log_bin=0;
call mtr.add_suppression("The function 'group_replication_switch_to_single_primary_mode' failed. There is*");
set session sql_log_bin=1;

# 4. Unlock the blocked action on server1
[connection server_1]
SET DEBUG_SYNC= "now SIGNAL signal.action_continue";
[connection server1]

# 5. Resume the action on server1
group_replication_switch_to_single_primary_mode("MEMBER1_UUID")
Mode switched to single-primary successfully.

# 6. Cleanup
SET @@GLOBAL.DEBUG= '-d,group_replication_block_group_action';
include/group_replication_end.inc