File: gr_start_replication_auto_write_protection.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 (45 lines) | stat: -rw-r--r-- 1,893 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
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]
#
# Start the member 1 and 2 and add some data
#
include/start_and_bootstrap_group_replication.inc
CREATE TABLE t1 (c1 INT NOT NULL PRIMARY KEY) ENGINE=InnoDB;
INSERT INTO t1 VALUES (1);
include/start_group_replication.inc
include/stop_group_replication.inc
#
# Block the applier on server 1 to block recovery on server 2
#
SET @@GLOBAL.DEBUG='+d,block_applier_updates';
#
# On server 2 restart the server. Group replication should start at boot
#
# restart:--group_replication_local_address=GROUP_REPLICATION_LOCAL_ADDRESS --group_replication_group_seeds=GROUP_REPLICATION_GROUP_SEEDS --group_replication_start_on_boot=1 --group-replication-group-name=f68d2bd0-8964-11e5-a837-0800200c9a66
[connection server_2]
[connection server2]
include/gr_wait_for_member_state.inc
#
# On server 2 after restart, recovery should be stuck
# Query execution is not allowed
#
INSERT INTO t1 VALUES (2);
ERROR HY000: The MySQL server is running with the --super-read-only option so it cannot execute this statement
include/assert.inc [On the recovered member, the table should exist and have 1 elements;]
#
# Unblock recovery by resuming the applier on server 1
#
SET DEBUG_SYNC = "now WAIT_FOR applier_read_blocked";
SET @@GLOBAL.DEBUG='-d,block_applier_updates';
SET DEBUG_SYNC = "now SIGNAL resume_applier_read";
include/gr_wait_for_member_state.inc
INSERT INTO t1 VALUES (2);
#
# Cleanup
#
SET DEBUG_SYNC= 'RESET';
DROP TABLE t1;
include/group_replication_end.inc