File: gr_recovery_errors_report.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 (46 lines) | stat: -rw-r--r-- 2,570 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
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. Bootstrap group on server1 and create table t1 on it.
[connection server1]
include/start_and_bootstrap_group_replication.inc
CREATE TABLE t1 (c1 INT NOT NULL PRIMARY KEY);

############################################################
# 2. Create the same table t1 on server1 and then join it to
#    the group, recovery will fail.
#    Assert that error is visible on
#    performance_schema.replication_applier_status_by_worker
#    and SHOW SLAVE STATUS between retry attempts.
[connection server2]
SET SESSION sql_log_bin= 0;
call mtr.add_suppression("Replica SQL for channel 'group_replication_recovery': Worker [0-9] failed executing transaction .*; Error 'Table 't1' already exists' on query.*");
call mtr.add_suppression("Replica SQL for channel 'group_replication_recovery': Error 'Table 't1' already exists' on query.*");
call mtr.add_suppression("Replica: Table 't1' already exists Error_code: MY-001050");
call mtr.add_suppression("Error while starting the group replication incremental recovery receiver/applier threads");
CREATE TABLE t1 (c1 INT NOT NULL PRIMARY KEY);
SET SESSION sql_log_bin= 1;
SET @group_replication_recovery_reconnect_interval_save= @@GLOBAL.group_replication_recovery_reconnect_interval;
SET GLOBAL group_replication_recovery_reconnect_interval= 3600;
SET GLOBAL group_replication_group_name= "GROUP_REPLICATION_GROUP_NAME";
START GROUP_REPLICATION;
# Wait until the error is reported on performance_schema.replication_applier_status_by_worker table
include/assert.inc [Recovery channel error is reported on Last_Errno]
include/assert.inc [Recovery channel error is reported on Last_SQL_Errno]
include/assert.inc [MEMBER_STATE is RECOVERING]
include/stop_group_replication.inc
SET GLOBAL group_replication_recovery_reconnect_interval= @group_replication_recovery_reconnect_interval_save;

############################################################
# 3. Clean up.
[connection server2]
SET SESSION sql_log_bin= 0;
DROP TABLE t1;
SET SESSION sql_log_bin= 1;
[connection server1]
DROP TABLE t1;
include/group_replication_end.inc