82 lines
3.9 KiB
Plaintext
82 lines
3.9 KiB
Plaintext
################################################################################
|
|
# WL#6841 - GCS Replication: P_S table to show GCS kernel stats
|
|
#
|
|
# This test checks the basic functionality of the Group Replication
|
|
# P_S for replication_connection_status table.
|
|
# DDL and DML testing for this table is addressed in other tests.
|
|
#
|
|
# The follwing scenarios are tested:
|
|
# 0. The test requires one server: M1.
|
|
# 1. Checking that GR channel in replication_connection_status is not present
|
|
# before group_replication on M1.
|
|
# 2. Bootstrap start M1. Validate group_name to valid name and service_state=ON.
|
|
# 3. On stop GR, validate group_name to valid name and service_state=OFF.
|
|
# 4. Check that group_name is reset if mysql server restarts.
|
|
# 5. Verify that the group_name and source_uuid are not preserved when plugin
|
|
# is uninstalled.
|
|
################################################################################
|
|
|
|
--let $group_replication_group_name= 8a94f356-aab3-11de-86aa-b80aa9429561
|
|
--source include/have_group_replication_plugin.inc
|
|
|
|
--connection server1
|
|
# This is a valid name being given to the group name
|
|
--eval SET GLOBAL group_replication_group_name= "$group_replication_group_name"
|
|
|
|
# Checking the performance Schema output for the replication_connection_status table.
|
|
# Channel only exists after start Group Replication.
|
|
--let $group_name= query_get_value(SELECT Group_Name from performance_schema.replication_connection_status, Group_Name, 1)
|
|
--let $assert_text= The value of group name should be $group_replication_group_name
|
|
--let $assert_cond= "$group_name" = "No such row"
|
|
--source include/assert.inc
|
|
|
|
--let $service_state= query_get_value(SELECT Service_state from performance_schema.replication_connection_status, Service_state, 1)
|
|
--let $assert_text= The value of service state before Group Replication start should be OFF
|
|
--let $assert_cond= "$service_state" = "No such row"
|
|
--source include/assert.inc
|
|
|
|
# Start Group Replication
|
|
--source include/start_and_bootstrap_group_replication.inc
|
|
|
|
--let $group_name= query_get_value(SELECT Group_Name from performance_schema.replication_connection_status, Group_Name, 1)
|
|
--let $assert_text= The value of group name should be $group_replication_group_name
|
|
--let $assert_cond= "$group_name" = "$group_replication_group_name"
|
|
--source include/assert.inc
|
|
|
|
--let $service_state= query_get_value(SELECT Service_state from performance_schema.replication_connection_status, Service_state, 1)
|
|
--let $assert_text= The value of service state after Group Replication start should be ON
|
|
--let $assert_cond= "$service_state" = "ON"
|
|
--source include/assert.inc
|
|
|
|
# Stop Group Replication
|
|
--source include/stop_group_replication.inc
|
|
|
|
--let $group_name= query_get_value(SELECT Group_Name from performance_schema.replication_connection_status, Group_Name, 1)
|
|
|
|
--let $assert_text= The value of group name should be $group_replication_group_name
|
|
--let $assert_cond= "$group_name" = "$group_replication_group_name"
|
|
--source include/assert.inc
|
|
|
|
--let $service_state= query_get_value(SELECT Service_state from performance_schema.replication_connection_status, Service_state, 1)
|
|
--let $assert_text= The value of service state after Group Replication stop should be OFF again
|
|
--let $assert_cond= "$service_state" = "OFF"
|
|
--source include/assert.inc
|
|
|
|
# This restart tests that the plugin is still loaded on the server restart
|
|
--source include/restart_mysqld.inc
|
|
|
|
# After the server restart the group name is again set to NULL
|
|
--let $group_name= query_get_value(SELECT Group_Name from performance_schema.replication_connection_status, Group_Name, 1)
|
|
|
|
--let $assert_text= The value of group name should be NULL
|
|
--let $assert_cond= "$group_Name"= ""
|
|
--source include/assert.inc
|
|
|
|
--let $source_uuid= query_get_value(SELECT Source_Uuid from performance_schema.replication_connection_status, Source_Uuid, 1)
|
|
|
|
--let $assert_text= The value of source_uuid should be NULL
|
|
--let $assert_cond= "$source_uuid"= ""
|
|
--source include/assert.inc
|
|
|
|
--source include/gr_clear_configuration.inc
|