summaryrefslogtreecommitdiffstats
path: root/mysql-test/suite/rpl/t/rpl_bug33931.test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/rpl/t/rpl_bug33931.test')
-rw-r--r--mysql-test/suite/rpl/t/rpl_bug33931.test49
1 files changed, 49 insertions, 0 deletions
diff --git a/mysql-test/suite/rpl/t/rpl_bug33931.test b/mysql-test/suite/rpl/t/rpl_bug33931.test
new file mode 100644
index 00000000..0b2cbb63
--- /dev/null
+++ b/mysql-test/suite/rpl/t/rpl_bug33931.test
@@ -0,0 +1,49 @@
+# Test for
+# Bug #33931 assertion at write_ignored_events_info_to_relay_log if init_slave_thread() fails
+# Bug #33932 assertion at handle_slave_sql if init_slave_thread() fails
+
+source include/have_debug.inc;
+source include/master-slave.inc;
+
+connection slave;
+
+# Add suppression for expected warnings in slaves error log
+call mtr.add_suppression("Failed during slave I/O thread initialization");
+call mtr.add_suppression("Slave SQL.*Failed during slave thread initialization.* 1593");
+
+--source include/stop_slave.inc
+reset slave;
+
+# Set debug flags on slave to force errors to occur
+SET @saved_dbug = @@GLOBAL.debug_dbug;
+SET GLOBAL debug_dbug="d,simulate_io_slave_error_on_init,simulate_sql_slave_error_on_init";
+
+--disable_query_log
+eval CHANGE MASTER TO MASTER_USER='root',
+ MASTER_CONNECT_RETRY=1,
+ MASTER_HOST='127.0.0.1',
+ MASTER_PORT=$MASTER_MYPORT;
+--enable_query_log
+
+start slave;
+
+#
+# slave is going to stop because of emulated failures
+# but there won't be any crashes nor asserts hit.
+#
+
+# 1593 = ER_SLAVE_FATAL_ERROR
+--let $slave_sql_errno= 1593
+--let $show_slave_sql_error= 1
+--source include/wait_for_slave_sql_error.inc
+
+#
+# Cleanup
+#
+SET @@GLOBAL.debug_dbug = @saved_dbug;
+
+# Clear Last_SQL_Error
+RESET SLAVE;
+
+--let $rpl_only_running_threads= 1
+--source include/rpl_end.inc