File: gr_xplugin_global_variables.test

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 (398 lines) | stat: -rw-r--r-- 21,736 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
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
###############################################################################
# Basic test to set the group replication variables and verify if the GR
# variables are set correctly using xplugin (x prototcol)
#
# NOTE : All the queries through mysqlx plugin is passed using mysqlxtest.
#
# Test:
# 0. This test requires one server.
# 1. Verify that all the group replication variables are GLOBAL variables.
# 2. Copy the original Values of GR variables.
# 3. Set/Modify the GR variables.
# 4. Assert all the modified variables.
# 5. Clean-up
###############################################################################

--source include/big_test.inc
--source include/have_group_replication_xcom_communication_stack.inc
--source include/have_mysqlx_plugin.inc
--source include/have_group_replication_plugin_base.inc

## This initial setup starts three servers with all the prerequisites required
## for GR to start

--source include/have_group_replication_plugin.inc
--let $rpl_skip_group_replication_start= 1
--let $rpl_server_count= 2
--source include/group_replication.inc

## Install Mysqlx plugin on all servers and fetch the mysqlx_port to the local
## variables

--let $rpl_connection_name= server1
--source include/rpl_connection.inc
--source include/xplugin_wait_for_interfaces.inc
--let $mysqlx_port1= `Select @@Global.mysqlx_port`

# File for starting GR through X-protocol
# Bootstrap-server
--write_file $MYSQL_TMP_DIR/bootstrap_server.tmp
-->sql
SET GLOBAL GROUP_REPLICATION_GROUP_NAME = 'aaaaaaaa-eeee-aaaa-aaaa-aaaaaaaaaaaa';
SET @@GLOBAL.group_replication_ip_allowlist= "AUTOMATIC";
SET GLOBAL GROUP_REPLICATION_BOOTSTRAP_GROUP=1;
START GROUP_REPLICATION;
SET GLOBAL GROUP_REPLICATION_BOOTSTRAP_GROUP=0;
-->endsql
EOF

--echo Starting GR on server 1
--exec $MYSQLXTEST --ssl-cipher='ECDHE-RSA-AES128-GCM-SHA256' -u root --port=$mysqlx_port1 --file=$MYSQL_TMP_DIR/bootstrap_server.tmp 2>&1

# Wait for member state to be ONLINE
--let $group_replication_member_state= ONLINE
--source include/gr_wait_for_member_state.inc

--let $group_replication_group_seeds=`SELECT @@GLOBAL.group_replication_group_seeds`
--let $group_replication_local_address=`SELECT @@GLOBAL.group_replication_local_address`

--let $xcom_port = `SELECT SUBSTR("$group_replication_local_address",11,5)`

## Verify the default values of some of the GLOBAL variables whose values are independent of the MTR enviroment

--let $assert_text= group_replication_allow_local_lower_version_join is OFF
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_allow_local_lower_version_join]" = "0"
--source include/assert.inc

--let $assert_text= group_replication_auto_increment_increment is 7
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_auto_increment_increment]" = "7"
--source include/assert.inc

--let $assert_text= group_replication_components_stop_timeout is 300
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_components_stop_timeout]" = "300"
--source include/assert.inc

--let $assert_text= group_replication_compression_threshold is 1000000
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_compression_threshold]" = "1000000"
--source include/assert.inc

--let $assert_text= group_replication_enforce_update_everywhere_checks is ON
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_enforce_update_everywhere_checks]" = "1"
--source include/assert.inc

--let $assert_text= group_replication_flow_control_applier_threshold is 25000
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_flow_control_applier_threshold]" = "25000"
--source include/assert.inc

--let $assert_text= group_replication_flow_control_certifier_threshold is 25000
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_flow_control_certifier_threshold]" = "25000"
--source include/assert.inc

--let $assert_text= group_replication_flow_control_mode is QUOTA
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_flow_control_mode]" = "QUOTA"
--source include/assert.inc

--let $assert_text= group_replication_ip_allowlist is AUTOMATIC
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_ip_allowlist]" = "AUTOMATIC"
--source include/assert.inc

--let $assert_text= group_replication_poll_spin_loops is 0
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_poll_spin_loops]" = "0"
--source include/assert.inc

--let $assert_text= group_replication_recovery_complete_at is TRANSACTIONS_APPLIED
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_complete_at]" = "TRANSACTIONS_APPLIED"
--source include/assert.inc

--let $assert_text= group_replication_recovery_reconnect_interval is 60
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_reconnect_interval]" = "60"
--source include/assert.inc

--let $assert_text= group_replication_recovery_retry_count is 10
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_retry_count]" = "10"
--source include/assert.inc

--let $assert_text= group_replication_start_on_boot is OFF
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_start_on_boot]" = "0"
--source include/assert.inc

--let $assert_text= group_replication_single_primary_mode is OFF
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_single_primary_mode]" = "0"
--source include/assert.inc

## Save the original values of each GLOBAL variable

--source include/stop_group_replication.inc

SET @group_replication_allow_local_lower_version_join_save= @@GLOBAL.group_replication_allow_local_lower_version_join;
SET @group_replication_auto_increment_increment_save= @@GLOBAL.group_replication_auto_increment_increment;
SET @group_replication_components_stop_timeout_save= @@GLOBAL.group_replication_components_stop_timeout;
SET @group_replication_compression_threshold_save= @@GLOBAL.group_replication_compression_threshold;
SET @group_replication_enforce_update_everywhere_checks_save= @@GLOBAL.group_replication_enforce_update_everywhere_checks;
SET @group_replication_flow_control_applier_threshold_save= @@GLOBAL.group_replication_flow_control_applier_threshold;
SET @group_replication_flow_control_certifier_threshold_save= @@GLOBAL.group_replication_flow_control_certifier_threshold;
SET @group_replication_flow_control_mode_save= @@GLOBAL.group_replication_flow_control_mode;
SET @group_replication_group_name_save= @@GLOBAL.group_replication_group_name;
SET @group_replication_gtid_assignment_block_size_save= @@GLOBAL.group_replication_gtid_assignment_block_size;
SET @group_replication_group_seeds_save= @@GLOBAL.group_replication_group_seeds;
SET @group_replication_local_address_save= @@GLOBAL.group_replication_local_address;
SET @group_replication_poll_spin_loops_save= @@GLOBAL.group_replication_poll_spin_loops;
SET @group_replication_recovery_complete_at_save= @@GLOBAL.group_replication_recovery_complete_at;
SET @group_replication_recovery_reconnect_interval_save= @@GLOBAL.group_replication_recovery_reconnect_interval;
SET @group_replication_recovery_retry_count_save= @@GLOBAL.group_replication_recovery_retry_count;
SET @group_replication_recovery_ssl_ca_save= @@GLOBAL.group_replication_recovery_ssl_ca;
SET @group_replication_recovery_ssl_capath_save= @@GLOBAL.group_replication_recovery_ssl_capath;
SET @group_replication_recovery_ssl_cert_save= @@GLOBAL.group_replication_recovery_ssl_cert;
SET @group_replication_recovery_ssl_cipher_save= @@GLOBAL.group_replication_recovery_ssl_cipher;
SET @group_replication_recovery_ssl_crl_save= @@GLOBAL.group_replication_recovery_ssl_crl;
SET @group_replication_recovery_ssl_crlpath_save= @@GLOBAL.group_replication_recovery_ssl_crlpath;
SET @group_replication_recovery_ssl_key_save= @@GLOBAL.group_replication_recovery_ssl_key;
SET @group_replication_recovery_ssl_verify_server_cert_save= @@GLOBAL.group_replication_recovery_ssl_verify_server_cert;
SET @group_replication_recovery_use_ssl_save= @@GLOBAL.group_replication_recovery_use_ssl;
SET @group_replication_single_primary_mode_save= @@GLOBAL.group_replication_single_primary_mode;
SET @group_replication_ssl_mode_save= @@GLOBAL.group_replication_ssl_mode;
SET @group_replication_start_on_boot_save= @@GLOBAL.group_replication_start_on_boot;
SET @group_replication_recovery_public_key_path_save= @@GLOBAL.group_replication_recovery_public_key_path;
SET @group_replication_recovery_get_public_key_save= @@GLOBAL.group_replication_recovery_get_public_key;

## Set the GR Variables

--write_file $MYSQL_TMP_DIR/set_variables.tmp
SET GLOBAL group_replication_allow_local_lower_version_join= ON;
SET GLOBAL group_replication_auto_increment_increment= 5;
SET GLOBAL group_replication_bootstrap_group= 1;
SET GLOBAL group_replication_components_stop_timeout= 10;
SET GLOBAL group_replication_compression_threshold= 10;
SET GLOBAL group_replication_enforce_update_everywhere_checks= OFF;
SET GLOBAL group_replication_flow_control_applier_threshold= 50000;
SET GLOBAL group_replication_flow_control_certifier_threshold= 50000;
SET GLOBAL group_replication_flow_control_mode= "DISABLED";
SET GLOBAL group_replication_force_members= "";
SET GLOBAL group_replication_group_name= "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaab";
SET GLOBAL group_replication_group_seeds= CONCAT("localhost:",%XCOM_PORT%);
SET GLOBAL group_replication_gtid_assignment_block_size= 2;
SET GLOBAL group_replication_ip_allowlist= "AUTOMATIC";
SET GLOBAL group_replication_local_address= CONCAT("localhost:",%XCOM_PORT%);
SET GLOBAL group_replication_poll_spin_loops= 10;
SET GLOBAL group_replication_recovery_complete_at= TRANSACTIONS_CERTIFIED;
SET GLOBAL group_replication_recovery_reconnect_interval= 20;
SET GLOBAL group_replication_recovery_retry_count= 5;
SET GLOBAL group_replication_recovery_ssl_ca= '%TEST_DIR%/std_data/cacert.pem';
SET GLOBAL group_replication_recovery_ssl_capath= '%TEST_DIR%/std_data';
SET GLOBAL group_replication_recovery_ssl_cert= '%TEST_DIR%/std_data/client-cert.pem';
SET GLOBAL group_replication_recovery_ssl_cipher= 'ECDHE-RSA-AES128-GCM-SHA256';
SET GLOBAL group_replication_recovery_ssl_crl= 'crl-client-revoked.crl';
SET GLOBAL group_replication_recovery_ssl_crlpath= '%TEST_DIR%/std_data';
SET GLOBAL group_replication_recovery_ssl_key= '%TEST_DIR%/std_data/client-key.pem';
SET GLOBAl group_replication_recovery_ssl_verify_server_cert= ON;
SET GLOBAL group_replication_recovery_use_ssl= ON;
SET GLOBAL group_replication_single_primary_mode= ON;
SET GLOBAL group_replication_ssl_mode= "VERIFY_CA";
SET GLOBAL group_replication_start_on_boot= ON;
SET GLOBAL group_replication_recovery_get_public_key= ON;
SET GLOBAL group_replication_recovery_public_key_path= '%TEST_DIR%/std_data/rsa_public_key.pem';

EOF

--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $xcom_port xcom_port
--exec $MYSQLXTEST --ssl-cipher='ECDHE-RSA-AES128-GCM-SHA256' -u root --port=$mysqlx_port1 --file=$MYSQL_TMP_DIR/set_variables.tmp -v %TEST_DIR%=$MYSQL_TEST_DIR -v %XCOM_PORT%=$xcom_port 2>&1

## Start GR

## Using start gr command instead of start_group_replication.inc since
## it resets the Group name set above.

--source include/start_group_replication_command.inc

--let $assert_text= group_replication_allow_local_lower_version_join is ON
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_allow_local_lower_version_join]" = "1"
--source include/assert.inc

--let $assert_text= group_replication_auto_increment_increment is 5
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_auto_increment_increment]" = "5"
--source include/assert.inc

--let $assert_text= group_replication_components_stop_timeout is 10
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_components_stop_timeout]" = "10"
--source include/assert.inc

--let $assert_text= group_replication_compression_threshold is 10
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_compression_threshold]" = "10"
--source include/assert.inc

--let $assert_text= group_replication_enforce_update_everywhere_checks is OFF
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_enforce_update_everywhere_checks]" = "0"
--source include/assert.inc

--let $assert_text= group_replication_flow_control_applier_threshold is 50000
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_flow_control_applier_threshold]" = "50000"
--source include/assert.inc

--let $assert_text= group_replication_flow_control_certifier_threshold is 50000
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_flow_control_certifier_threshold]" = "50000"
--source include/assert.inc

--let $assert_text= group_replication_flow_control_mode is DISABLED
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_flow_control_mode]" = "DISABLED"
--source include/assert.inc

--let $assert_text= group_replication_force_members is ""
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_force_members]" = ""
--source include/assert.inc

--let $assert_text= group_replication_group_name is aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaab
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_group_name]" = "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaab"
--source include/assert.inc

--let $assert_text= group_replication_group_seeds is 127.0.0.1:xcom_port
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_group_seeds]" = "localhost:$xcom_port"
--source include/assert.inc

--let $assert_text= group_replication_gtid_assignment_block_size is 2
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_gtid_assignment_block_size]" = "2"
--source include/assert.inc

--let $assert_text= group_replication_ip_allowlist is AUTOMATIC
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_ip_allowlist]" = "AUTOMATIC"
--source include/assert.inc

--let $assert_text= group_replication_local_address is 127.0.0.1:xcom_port
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_local_address]" = "localhost:$xcom_port"
--source include/assert.inc

--let $assert_text= group_replication_recovery_complete_at is TRANSACTIONS_CERTIFIED
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_complete_at]" = "TRANSACTIONS_CERTIFIED"
--source include/assert.inc

--let $assert_text= group_replication_recovery_reconnect_interval is 20
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_reconnect_interval]" = "20"
--source include/assert.inc

--let $assert_text= group_replication_recovery_retry_count is 5
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_retry_count]" = "5"
--source include/assert.inc

--let $assert_text= group_replication_recovery_ssl_ca is MYSQL_TEST_DIR/std_data/cacert.pem
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_ssl_ca]" = "$MYSQL_TEST_DIR/std_data/cacert.pem"
--source include/assert.inc

--let $assert_text= group_replication_recovery_ssl_capath is MYSQL_TEST_DIR/std_data
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_ssl_capath]" = "$MYSQL_TEST_DIR/std_data"
--source include/assert.inc

--let $assert_text= group_replication_recovery_ssl_cert is MYSQL_TEST_DIR/std_data/client-cert.pem
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_ssl_cert]" = "$MYSQL_TEST_DIR/std_data/client-cert.pem"
--source include/assert.inc

--let $assert_text= group_replication_recovery_ssl_cipher is ECDHE-RSA-AES128-GCM-SHA256
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_ssl_cipher]" = "ECDHE-RSA-AES128-GCM-SHA256"
--source include/assert.inc

--let $assert_text= group_replication_recovery_ssl_crl is crl-client-revoked.crl
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_ssl_crl]" = "crl-client-revoked.crl"
--source include/assert.inc

--let $assert_text= group_replication_recovery_ssl_crlpath is MYSQL_TEST_DIR/std_data
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_ssl_crlpath]" = "$MYSQL_TEST_DIR/std_data"
--source include/assert.inc

--let $assert_text= group_replication_recovery_ssl_key is MYSQL_TEST_DIR/std_data/client-key.pem
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_ssl_key]" = "$MYSQL_TEST_DIR/std_data/client-key.pem"
--source include/assert.inc

--let $assert_text= group_replication_recovery_ssl_verify_server_cert is ON
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_ssl_verify_server_cert]" = "1"
--source include/assert.inc

--let $assert_text= group_replication_recovery_use_ssl is ON
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_use_ssl]" = "1"
--source include/assert.inc

--let $assert_text= group_replication_single_primary_mode is ON
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_single_primary_mode]" = "1"
--source include/assert.inc

--let $assert_text= group_replication_start_on_boot is ON
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_start_on_boot]" = "1"
--source include/assert.inc

--let $assert_text= group_replication_ssl_mode is VERIFY_CA
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_ssl_mode]" = "VERIFY_CA"
--source include/assert.inc

--let $assert_text= group_replication_recovery_public_key_path is MYSQL_TEST_DIR/std_data/rsa_public_key.pem
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_public_key_path]" = "$MYSQL_TEST_DIR/std_data/rsa_public_key.pem"
--source include/assert.inc

--let $assert_text= group_replication_recovery_get_public_key is ON
--let $assert_cond= "[SELECT @@GLOBAL.group_replication_recovery_get_public_key]" = "1"
--source include/assert.inc

# Creating temp file to stop GR.
--write_file $MYSQL_TMP_DIR/stop_group_replication.tmp
-->stmtsql STOP GROUP_REPLICATION;
-->recvresult
EOF

## Stop GR on Server1
--echo Stopping GR on server 1
--exec $MYSQLXTEST --ssl-cipher='ECDHE-RSA-AES128-GCM-SHA256' -u root --port=$mysqlx_port1 --file=$MYSQL_TMP_DIR/stop_group_replication.tmp 2>&1

## Wait for member state to be OFFLINE.
--let $group_replication_member_state= OFFLINE
--source include/gr_wait_for_member_state.inc
--source include/assert_and_disable_read_only.inc

## Modify the GLOBAL variables to its original value

SET GLOBAL group_replication_allow_local_lower_version_join= @group_replication_allow_local_lower_version_join_save;
SET GLOBAL group_replication_auto_increment_increment= @group_replication_auto_increment_increment_save;
SET GLOBAL group_replication_components_stop_timeout= @group_replication_components_stop_timeout_save;
SET GLOBAL group_replication_compression_threshold= @group_replication_compression_threshold_save;
SET GLOBAL group_replication_flow_control_applier_threshold= @group_replication_flow_control_applier_threshold_save;
SET GLOBAL group_replication_flow_control_certifier_threshold= @group_replication_flow_control_certifier_threshold_save;
SET GLOBAL group_replication_flow_control_mode= @group_replication_flow_control_mode_save;
SET GLOBAL group_replication_group_name =@group_replication_group_name_save;
SET GLOBAL group_replication_group_seeds= @group_replication_group_seeds_save;
SET GLOBAL group_replication_gtid_assignment_block_size= @group_replication_gtid_assignment_block_size_save;
SET GLOBAL group_replication_local_address= @group_replication_local_address_save;
SET GLOBAL group_replication_group_seeds= @group_replication_group_seeds_save;
SET GLOBAL group_replication_recovery_complete_at= @group_replication_recovery_complete_at_save;
SET GLOBAL group_replication_poll_spin_loops= @group_replication_poll_spin_loops_save;
SET GLOBAL group_replication_recovery_reconnect_interval= @group_replication_recovery_reconnect_interval_save;
SET GLOBAL group_replication_recovery_retry_count= @group_replication_recovery_retry_count_save;
SET GLOBAL group_replication_recovery_ssl_ca= @group_replication_recovery_ssl_ca_save;
SET GLOBAL group_replication_recovery_ssl_capath= @group_replication_recovery_ssl_capath_save;
SET GLOBAL group_replication_recovery_ssl_cert= @group_replication_recovery_ssl_cert_save;
SET GLOBAL group_replication_recovery_ssl_cipher= @group_replication_recovery_ssl_cipher_save;
SET GLOBAL group_replication_recovery_ssl_crl= @group_replication_recovery_ssl_crl_save;
SET GLOBAL group_replication_recovery_ssl_crlpath= @group_replication_recovery_ssl_crlpath_save;
SET GLOBAL group_replication_recovery_ssl_key= @group_replication_recovery_ssl_key_save;
SET GLOBAL group_replication_recovery_ssl_verify_server_cert= @group_replication_recovery_ssl_verify_server_cert_save;
SET GLOBAL group_replication_recovery_use_ssl= @group_replication_recovery_use_ssl_save;
SET GLOBAL group_replication_single_primary_mode= @group_replication_single_primary_mode_save;
SET GLOBAL group_replication_ssl_mode= @group_replication_ssl_mode_save;
SET GLOBAL group_replication_start_on_boot= @group_replication_start_on_boot_save;
SET GLOBAL group_replication_enforce_update_everywhere_checks= @group_replication_enforce_update_everywhere_checks_save;
SET GLOBAL group_replication_recovery_public_key_path= @group_replication_recovery_public_key_path_save;
SET GLOBAL group_replication_recovery_get_public_key= @group_replication_recovery_get_public_key_save;

## See if GR is able to start after resetting the values.
--exec $MYSQLXTEST --ssl-cipher='ECDHE-RSA-AES128-GCM-SHA256' -u root --port=$mysqlx_port1 --file=$MYSQL_TMP_DIR/bootstrap_server.tmp 2>&1
--let $group_replication_member_state= ONLINE
--source include/gr_wait_for_member_state.inc

## Stop GR
--exec $MYSQLXTEST --ssl-cipher='ECDHE-RSA-AES128-GCM-SHA256' -u root --port=$mysqlx_port1 --file=$MYSQL_TMP_DIR/stop_group_replication.tmp 2>&1
--let $rpl_connection_name= server1
--source include/rpl_connection.inc
--let $group_replication_member_state= OFFLINE
--source include/gr_wait_for_member_state.inc
--source include/assert_and_disable_read_only.inc

## Clean-up
--remove_file $MYSQL_TMP_DIR/bootstrap_server.tmp
--remove_file $MYSQL_TMP_DIR/set_variables.tmp
--remove_file $MYSQL_TMP_DIR/stop_group_replication.tmp

--source include/group_replication_end.inc