config root man

Current Path : /home/usr.opt/mysql57/mysql-test/suite/rpl/t/

FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64
Upload File :
Current File : //home/usr.opt/mysql57/mysql-test/suite/rpl/t/rpl_err_ignoredtable.test

# Test for
# Bug#797: If a query is ignored on slave (replicate-ignore-table) the
#          slave still checks that it has the same error as on the master.
##########################################################################
# 2006-02-07 JBM Added error code 1022 for NDB Engine + ORDER BY
##########################################################################

--source include/not_group_replication_plugin.inc
--source include/master-slave.inc

--disable_query_log
CALL mtr.add_suppression(
            CONCAT("Unsafe statement written to the binary log ",
                   "using statement format since BINLOG_FORMAT = STATEMENT."));
--enable_query_log

--connection master
# Attention:
# The table t1 MUST use some non transactional storage engine in order to
# replay the scenario of Bug#797.
create table t1 (a int primary key) engine = myisam;
create table t4 (a int primary key);

# The insert statement which follows
# - fails with ER_DUP_KEY or ER_DUP_ENTRY
# - but must be copied to the binlog when using mixed or statement based
#   replication because the first row gets inserted into the table using
#   the non transactional storage engine.
--error ER_DUP_KEY, ER_DUP_ENTRY
insert into t1 values (1),(1);
# For debugging:
# Expect to see "insert into t1 values (1),(1)" in the output of
# --source include/show_binlog_events.inc
insert into t4 values (1),(2);
# as the t1 table is ignored on the slave, the slave should be able to sync
--source include/sync_slave_sql_with_master.inc
# check that the table has been ignored, because otherwise the test is nonsense
show tables like 't1';
show tables like 't4';
SELECT * FROM test.t4 ORDER BY a;
--connection master
drop table t1;
--source include/sync_slave_sql_with_master.inc

# Now test that even critical errors (connection killed) are ignored if the
# rules allow it. The "kill" idea was copied from rpl000001.test.

--connection master1
select get_lock('crash_lock%20C', 10);

--connection master
# Attention:
# t2 MUST use some non transactional storage engine in order to replay the
# intended scenario.
create table t2 (a int primary key) engine = myisam;
insert into t2 values(1),(2);
let $master_id= `select connection_id()`;
# The "if( a = 1, 10, get_lock ...." takes care that we have probably
# already processed the first row before the waiting for the lock starts.
send update t2 set a = a + if(a = 1, 10, get_lock('crash_lock%20C', 10));

--connection master1
# Wait until we can be sure that the execution of the update is in the phase
# where it waits for getting the user lock.
let $wait_condition= SELECT count(*) > 0 FROM information_schema.processlist
                     WHERE info LIKE 'update%' AND state = 'User lock';
--source include/wait_condition_or_abort.inc
--replace_result $master_id <master_id>
eval kill $master_id;
# Wait until it is safe to issue DROP TABLE without causing deadlock.
# let $wait_condition= SELECT count(*) = 0 FROM information_schema.processlist
#                      WHERE info LIKE 'update%' AND state = 'User lock';
let $wait_condition= SELECT count(*) = 0 FROM information_schema.processlist
                     WHERE id = $master_id;
--source include/wait_condition_or_abort.inc
# For debugging:
# Expect to see "update t2 set a = a + if(a = 1, ........."
# --source include/show_binlog_events.inc
drop table t2;
insert into t4 values (3),(4);
--connection master
# The get_lock function causes warning for unsafe statement in case of using
# binlog_format=statement.
--disable_warnings
--error 0,ER_QUERY_INTERRUPTED,2013
reap;
--enable_warnings
--connection master1
--source include/sync_slave_sql_with_master.inc
SELECT * FROM test.t4 ORDER BY a;

--connection master1
DROP TABLE test.t4;
--source include/sync_slave_sql_with_master.inc
# End of 4.1 tests
# Adding comment for force manual merge 5.0 -> wl1012. delete me if needed


--source include/rpl_end.inc

Man Man