File: gr_acf_monitor_io_stopping.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 (87 lines) | stat: -rw-r--r-- 5,189 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
include/group_replication.inc [rpl_server_count=5]
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. Deploy a 2 members group A in single primary mode.

[connection server1]
include/start_and_bootstrap_group_replication.inc
[connection server2]
include/start_group_replication.inc

# 2. Deploy a 2 members group B in single primary mode.

[connection server3]
include/start_and_bootstrap_group_replication.inc
[connection server4]
include/start_group_replication.inc

# 3. Configure replica to manage the asynchronous connection
#    to groups A and B.

[connection server5]
SELECT asynchronous_connection_failover_add_managed('ch1', 'GroupReplication', 'GROUP_A', '127.0.0.1', SERVER_MYPORT, '', 90, 70);;
asynchronous_connection_failover_add_managed('ch1', 'GroupReplication', 'GROUP_A', '127.0.0.1', SERVER_MYPORT, '', 90, 70)
The UDF asynchronous_connection_failover_add_managed() executed successfully.
SELECT asynchronous_connection_failover_add_managed('ch2', 'GroupReplication', 'GROUP_B', '127.0.0.1', SERVER_MYPORT, '', 85, 65);;
asynchronous_connection_failover_add_managed('ch2', 'GroupReplication', 'GROUP_B', '127.0.0.1', SERVER_MYPORT, '', 85, 65)
The UDF asynchronous_connection_failover_add_managed() executed successfully.
include/assert.inc ['There is one row in performance_schema.replication_asynchronous_connection_failover for server2']
include/assert.inc ['There is one row in performance_schema.replication_asynchronous_connection_failover for server4']
include/assert.inc ['There is one row in performance_schema.replication_asynchronous_connection_failover_managed for group A']
include/assert.inc ['There is one row in performance_schema.replication_asynchronous_connection_failover_managed for group B']

# 4. Create and start two managed channel.

[connection server5]
CHANGE REPLICATION SOURCE TO SOURCE_HOST='127.0.0.1', SOURCE_USER='root', SOURCE_AUTO_POSITION=1, SOURCE_CONNECTION_AUTO_FAILOVER=1, SOURCE_PORT=SERVER_1_PORT, SOURCE_CONNECT_RETRY=1, SOURCE_RETRY_COUNT=1 FOR CHANNEL 'ch1';
Warnings:
Note	1759	Sending passwords in plain text without SSL/TLS is extremely insecure.
Note	1760	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.
CHANGE REPLICATION SOURCE TO SOURCE_HOST='127.0.0.1', SOURCE_USER='root', SOURCE_AUTO_POSITION=1, SOURCE_CONNECTION_AUTO_FAILOVER=1, SOURCE_PORT=SERVER_3_PORT, SOURCE_CONNECT_RETRY=1, SOURCE_RETRY_COUNT=1 FOR CHANNEL 'ch2';
Warnings:
Note	1759	Sending passwords in plain text without SSL/TLS is extremely insecure.
Note	1760	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.
include/start_slave.inc [FOR CHANNEL 'ch1']
include/start_slave.inc [FOR CHANNEL 'ch2']

# 5. Stop one of the replicas and verify Monitor IO thread is still running.

[connection server5]
include/assert.inc [Verify replica_monitor thread is running]
include/stop_slave.inc [FOR CHANNEL 'ch1']
include/assert.inc [Verify replica_monitor thread is running]

# 6. Stop the primary of group A and validate the ch2 reconnects to
#    the new primary (server4).

[connection server3]
include/stop_group_replication.inc
[connection server5]

# 7. Clean up.

[connection server5]
SET SESSION sql_log_bin = 0;
call mtr.add_suppression("The IO thread detected that the source .* does not belong to the group majority, thence the channel 'ch2' will try to connect to another source.");
call mtr.add_suppression("The Monitor IO thread detected that the source .* does not belong to the group majority, thence the channel 'ch2' will try to connect to another source.");
SET SESSION sql_log_bin = 1;
include/stop_slave.inc [FOR CHANNEL 'ch2']
include/assert.inc [Verify replica_monitor thread is not running]
include/rpl_reset_slave.inc
include/rpl_reset_slave.inc
SELECT asynchronous_connection_failover_delete_managed('ch1', 'GROUP_A');
asynchronous_connection_failover_delete_managed('ch1', 'GROUP_A')
The UDF asynchronous_connection_failover_delete_managed() executed successfully.
SELECT asynchronous_connection_failover_delete_managed('ch2', 'GROUP_B');
asynchronous_connection_failover_delete_managed('ch2', 'GROUP_B')
The UDF asynchronous_connection_failover_delete_managed() executed successfully.
[connection server4]
include/stop_group_replication.inc
[connection server2]
include/stop_group_replication.inc
[connection server1]
include/stop_group_replication.inc
include/group_replication_end.inc