diff options
Diffstat (limited to 'mysql-test/suite/rpl/t/rpl_flushlog_loop.test')
-rw-r--r-- | mysql-test/suite/rpl/t/rpl_flushlog_loop.test | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/mysql-test/suite/rpl/t/rpl_flushlog_loop.test b/mysql-test/suite/rpl/t/rpl_flushlog_loop.test new file mode 100644 index 00000000..d5d362ba --- /dev/null +++ b/mysql-test/suite/rpl/t/rpl_flushlog_loop.test @@ -0,0 +1,46 @@ +# Testing if "flush logs" command bouncing resulting in logs created in a loop +# in case of bi-directional replication +--let $rpl_topology= 1->2->1 +--source include/rpl_init.inc + +let $MYSQLD_DATADIR= `select @@datadir`; +--replace_result $MYSQLD_DATADIR MYSQLD_DATADIR/ +show variables like 'relay_log%'; + +# +# Flush logs of slave +# +# Create full loop by following way: +# 1. Insert into t1 on master (1st). +# 2. Insert into t1 on slave (2nd) when the event (1st) for t1 replicated. +# 3. Master waits until the event (2nd) for t1 will be replicated. + +CREATE TABLE t1 (a INT KEY) ENGINE= MyISAM; +let $wait_binlog_event= CREATE TABLE t1; +--source include/wait_for_binlog_event.inc +sync_slave_with_master server_2; + +connection server_1; +INSERT INTO t1 VALUE(1); +FLUSH LOGS; +sync_slave_with_master server_2; + +INSERT INTO t1 VALUE(2); +let $slave_param_value= query_get_value(SHOW MASTER STATUS, Position, 1); +sync_slave_with_master server_1; + +# +# Check that the master server's slave threads are still running and show +# Relay_Log_File +# +--source include/check_slave_is_running.inc +--let status_items= Relay_Log_File +--source include/show_slave_status.inc + +--disable_query_log +connection server_1; +DROP TABLE t1; +sync_slave_with_master server_2; +--enable_query_log + +--source include/rpl_end.inc |