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
|
################################################################################
#
# BUG#22305605 STOP SLAVE IO THREAD PRINTS WRONG LOST CONNECTION MESSAGE
# IN ERROR LOG FILE.
# Problem:
# STOP SLAVE IO_THREAD closes socket communication between Master and Slave.
# This prints an ERROR message in the error log
# [ERROR] Error reading packet from server: Lost connection to MySQL server
# during query (server_errno=2013).
# Here the socket closed intentionally by the DBA using command 'STOP SLAVE IO_THREAD'.
# Hence no need to print the message [ERROR] that says "Lost connection" which will
# confusion the users/DBAs.
# Steps to Reproduce:
# 1) Execute some dummy statements to make sure replication is working fine.
# 2) Stop I/O thread and see that there is no panic message printed in log file.
# 3) Stop SQL thread and see that there is no panic message printed in log file.
# 4) Stop both I/O and SQL threads and see that there is no panic message printed
# in log file.
#
################################################################################
--source include/master-slave.inc
# Execute dummy statements on Master and sync with Slave.
CREATE TABLE t1(i INT);
DROP TABLE t1;
--source include/sync_slave_sql_with_master.inc
# Case:1 Stop and Start slave IO thread
--source include/stop_slave_io.inc
--source include/start_slave_io.inc
# Make sure that there is no "Lost connection" error found in error log file
--let SEARCH_FILE=$MYSQLTEST_VARDIR/tmp/slave_log.err
--let SEARCH_PATTERN=Lost connection to MySQL server during query
--source include/search_pattern.inc
# Case:2 Stop and Start slave SQL thread
--source include/stop_slave_sql.inc
--source include/start_slave_sql.inc
# Make sure that there is no "Lost connection" error found in error log file
--let SEARCH_FILE=$MYSQLTEST_VARDIR/tmp/slave_log.err
--let SEARCH_PATTERN=Lost connection to MySQL server during query
--source include/search_pattern.inc
# Case:3 Stop and start slave IO and SQL thread
--source include/stop_slave.inc
--source include/start_slave.inc
# Make sure that there is no "Lost connection" error found in error log file
--let SEARCH_FILE=$MYSQLTEST_VARDIR/tmp/slave_log.err
--let SEARCH_PATTERN=Lost connection to MySQL server during query
--source include/search_pattern.inc
--source include/rpl_end.inc
# Initally server was started with --log-error option which creates
# master_log.err file. check-testcase would fail if we attempt to remove
# the file. Hence restart is required to clean up the created file.
# Restart
--source include/force_restart.inc
|