polardbxengine/mysql-test/suite/xengine_rpl_nogtid/t/rpl_ssl_semisync.test

67 lines
1.9 KiB
Plaintext

# === HITTING CRASH WHEN USING SEMISYNC MODE WITH SSL OPTIONS ===
#
# With the bug, semisync did not compile with SSL.
# The following CREATE TABLE as written below crashed with
# invalid memory access.
--source include/not_group_replication_plugin.inc
--source include/master-slave.inc
--source include/have_semisync_plugin.inc
--source include/install_semisync.inc
call mtr.add_suppression(".*Semi-sync master failed on net_flush.*before waiting for slave reply.*");
call mtr.add_suppression(".*Timeout waiting for reply of binlog .* semi-sync up to file .*");
--source include/sync_slave_sql_with_master.inc
--source include/rpl_connection_slave.inc
--source include/stop_slave.inc
CHANGE MASTER TO MASTER_SSL = 1;
--source include/start_slave.inc
--echo
--echo # Try replicating CREATE TABLE and verify that everything is fine.
--echo
--source include/rpl_connection_master.inc
USE test;
CREATE TABLE table1 (a INT);
--source include/sync_slave_sql_with_master.inc
--echo
--echo # STOP SLAVE and verify that replication works fine when slave resumes.
--echo
--source include/stop_slave_io.inc
--source include/rpl_connection_master.inc
INSERT INTO table1 VALUES(1);
--source include/rpl_connection_slave.inc
--source include/start_slave_io.inc
--echo
--echo # RE-START SLAVE and execute on master, verify that replication works fine.
--echo
--source include/rpl_connection_master.inc
INSERT INTO table1 VALUES(2);
--source include/sync_slave_sql_with_master.inc
--let $assert_text= Slave should have 2 rows(1,2)
--let $assert_cond= `SELECT COUNT(*)=2 from table1`
--source include/assert.inc
--echo
--echo # Clean-up
--echo
--source include/rpl_connection_master.inc
DROP TABLE table1;
--source include/sync_slave_sql_with_master.inc
--source include/uninstall_semisync.inc
--source include/stop_slave.inc
CHANGE MASTER TO MASTER_SSL = 0;
--let $rpl_only_running_threads= 1
--source include/rpl_end.inc