diff --git a/mysql-test/suite/binlog/r/binlog_multi_engine.result b/mysql-test/suite/binlog/r/binlog_multi_engine.result index 13227c5ecb1..8574a2351a1 100644 --- a/mysql-test/suite/binlog/r/binlog_multi_engine.result +++ b/mysql-test/suite/binlog/r/binlog_multi_engine.result @@ -3,8 +3,8 @@ CREATE TABLE t1b (b INT, c INT) ENGINE=BLACKHOLE; CREATE TABLE t1n (e INT, f INT) ENGINE=NDB; RESET MASTER; SET SESSION BINLOG_FORMAT=STATEMENT; -INSERT INTO t1m VALUES (1,1), (1,2), (2,1), (2,2); INSERT INTO t1b VALUES (1,1), (1,2), (2,1), (2,2); +INSERT INTO t1m VALUES (1,1), (1,2), (2,1), (2,2); UPDATE t1m, t1b SET m = 2, b = 3 WHERE n = c; *** Please look in binlog_multi_engine.test if you have a diff here **** START TRANSACTION; @@ -17,30 +17,28 @@ TRUNCATE t1b; TRUNCATE t1n; show binlog events from ; Log_name Pos Event_type Server_id End_log_pos Info -master-bin.000001 # Query # # use `test`; INSERT INTO t1m VALUES (1,1), (1,2), (2,1), (2,2) master-bin.000001 # Query # # use `test`; BEGIN master-bin.000001 # Query # # use `test`; INSERT INTO t1b VALUES (1,1), (1,2), (2,1), (2,2) master-bin.000001 # Query # # use `test`; COMMIT -master-bin.000001 # Query # # use `test`; BEGIN +master-bin.000001 # Query # # use `test`; INSERT INTO t1m VALUES (1,1), (1,2), (2,1), (2,2) master-bin.000001 # Query # # use `test`; UPDATE t1m, t1b SET m = 2, b = 3 WHERE n = c -master-bin.000001 # Query # # use `test`; COMMIT master-bin.000001 # Query # # use `test`; BEGIN master-bin.000001 # Query # # use `test`; INSERT INTO t1n VALUES (1,1), (1,2), (2,1), (2,2) master-bin.000001 # Query # # use `test`; UPDATE t1m, t1n SET m = 2, e = 3 WHERE n = f master-bin.000001 # Query # # use `test`; UPDATE t1n, t1b SET e = 2, b = 3 WHERE f = c master-bin.000001 # Query # # use `test`; COMMIT -master-bin.000001 # Query # # use `test`; TRUNCATE t1m -master-bin.000001 # Query # # use `test`; TRUNCATE t1b master-bin.000001 # Query # # BEGIN master-bin.000001 # Table_map # # table_id: # (test.t1n) master-bin.000001 # Table_map # # table_id: # (mysql.ndb_apply_status) master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F master-bin.000001 # Query # # COMMIT +master-bin.000001 # Query # # use `test`; TRUNCATE t1m +master-bin.000001 # Query # # use `test`; TRUNCATE t1b master-bin.000001 # Query # # use `test`; TRUNCATE t1n RESET MASTER; SET SESSION BINLOG_FORMAT=MIXED; -INSERT INTO t1m VALUES (1,1), (1,2), (2,1), (2,2); INSERT INTO t1b VALUES (1,1), (1,2), (2,1), (2,2); +INSERT INTO t1m VALUES (1,1), (1,2), (2,1), (2,2); INSERT INTO t1n VALUES (1,1), (1,2), (2,1), (2,2); UPDATE t1m, t1b SET m = 2, b = 3 WHERE n = c; UPDATE t1m, t1n SET m = 2, e = 3 WHERE n = f; @@ -52,21 +50,19 @@ TRUNCATE t1b; TRUNCATE t1n; show binlog events from ; Log_name Pos Event_type Server_id End_log_pos Info -master-bin.000001 # Query # # use `test`; INSERT INTO t1m VALUES (1,1), (1,2), (2,1), (2,2) master-bin.000001 # Query # # use `test`; BEGIN master-bin.000001 # Query # # use `test`; INSERT INTO t1b VALUES (1,1), (1,2), (2,1), (2,2) master-bin.000001 # Query # # use `test`; COMMIT -master-bin.000001 # Query # # use `test`; BEGIN -master-bin.000001 # Query # # use `test`; UPDATE t1m, t1b SET m = 2, b = 3 WHERE n = c -master-bin.000001 # Query # # use `test`; COMMIT -master-bin.000001 # Query # # use `test`; TRUNCATE t1m -master-bin.000001 # Query # # use `test`; TRUNCATE t1b +master-bin.000001 # Query # # use `test`; INSERT INTO t1m VALUES (1,1), (1,2), (2,1), (2,2) master-bin.000001 # Query # # BEGIN master-bin.000001 # Table_map # # table_id: # (test.t1n) master-bin.000001 # Table_map # # table_id: # (mysql.ndb_apply_status) master-bin.000001 # Write_rows # # table_id: # master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F master-bin.000001 # Query # # COMMIT +master-bin.000001 # Query # # use `test`; UPDATE t1m, t1b SET m = 2, b = 3 WHERE n = c +master-bin.000001 # Query # # use `test`; TRUNCATE t1m +master-bin.000001 # Query # # use `test`; TRUNCATE t1b master-bin.000001 # Query # # use `test`; TRUNCATE t1n RESET MASTER; SET SESSION BINLOG_FORMAT=ROW; diff --git a/mysql-test/suite/binlog/t/binlog_multi_engine.test b/mysql-test/suite/binlog/t/binlog_multi_engine.test index 058aca0f715..bf84eed6ec1 100644 --- a/mysql-test/suite/binlog/t/binlog_multi_engine.test +++ b/mysql-test/suite/binlog/t/binlog_multi_engine.test @@ -15,11 +15,16 @@ RESET MASTER; SET SESSION BINLOG_FORMAT=STATEMENT; -INSERT INTO t1m VALUES (1,1), (1,2), (2,1), (2,2); INSERT INTO t1b VALUES (1,1), (1,2), (2,1), (2,2); +INSERT INTO t1m VALUES (1,1), (1,2), (2,1), (2,2); UPDATE t1m, t1b SET m = 2, b = 3 WHERE n = c; +# Here and below we need to wait when some event appears in binlog +# to avoid unsrted mixing local events and from NDB +let $wait_binlog_event= t1m, t1b; +source include/wait_for_binlog_event.inc; + echo *** Please look in binlog_multi_engine.test if you have a diff here ****; START TRANSACTION; INSERT INTO t1n VALUES (1,1), (1,2), (2,1), (2,2); @@ -27,20 +32,33 @@ UPDATE t1m, t1n SET m = 2, e = 3 WHERE n = f; UPDATE t1n, t1b SET e = 2, b = 3 WHERE f = c; COMMIT; +let $wait_binlog_event= COMMIT; +source include/wait_for_binlog_event.inc; + TRUNCATE t1m; TRUNCATE t1b; TRUNCATE t1n; +let $wait_binlog_event= t1n; +source include/wait_for_binlog_event.inc; + source include/show_binlog_events.inc; RESET MASTER; SET SESSION BINLOG_FORMAT=MIXED; -INSERT INTO t1m VALUES (1,1), (1,2), (2,1), (2,2); INSERT INTO t1b VALUES (1,1), (1,2), (2,1), (2,2); +INSERT INTO t1m VALUES (1,1), (1,2), (2,1), (2,2); + +let $wait_binlog_event= t1m; +source include/wait_for_binlog_event.inc; + INSERT INTO t1n VALUES (1,1), (1,2), (2,1), (2,2); +let $wait_binlog_event= COMMIT; +source include/wait_for_binlog_event.inc; + UPDATE t1m, t1b SET m = 2, b = 3 WHERE n = c; error ER_BINLOG_LOGGING_IMPOSSIBLE; UPDATE t1m, t1n SET m = 2, e = 3 WHERE n = f; diff --git a/mysql-test/suite/binlog/t/disabled.def b/mysql-test/suite/binlog/t/disabled.def index a6e73fa31d8..888298bbb09 100644 --- a/mysql-test/suite/binlog/t/disabled.def +++ b/mysql-test/suite/binlog/t/disabled.def @@ -9,4 +9,3 @@ # Do not use any TAB characters for whitespace. # ############################################################################## -binlog_multi_engine : Bug#32663 binlog_multi_engine.test fails randomly diff --git a/mysql-test/suite/bugs/r/rpl_bug23533.result b/mysql-test/suite/bugs/r/rpl_bug23533.result new file mode 100644 index 00000000000..1dda75a69b0 --- /dev/null +++ b/mysql-test/suite/bugs/r/rpl_bug23533.result @@ -0,0 +1,23 @@ +stop slave; +drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9; +reset master; +reset slave; +drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9; +start slave; +DROP TABLE IF EXISTS t1,t2; +SET AUTOCOMMIT=0; +SET GLOBAL max_binlog_cache_size=4096; +SHOW VARIABLES LIKE 'max_binlog_cache_size'; +Variable_name Value +max_binlog_cache_size 4096 +CREATE TABLE t1 (a INT NOT NULL AUTO_INCREMENT, b TEXT, PRIMARY KEY(a)) ENGINE=InnoDB; +SELECT COUNT(*) FROM t1; +COUNT(*) +1000 +START TRANSACTION; +CREATE TABLE t2 SELECT * FROM t1; +ERROR HY000: Writing one row to the row-based binary log failed +COMMIT; +SHOW TABLES LIKE 't%'; +Tables_in_test (t%) +t1 diff --git a/mysql-test/suite/bugs/t/rpl_bug23533.test b/mysql-test/suite/bugs/t/rpl_bug23533.test new file mode 100644 index 00000000000..397f1102f0e --- /dev/null +++ b/mysql-test/suite/bugs/t/rpl_bug23533.test @@ -0,0 +1,43 @@ +############################################################# +# Author: Serge Kozlov +# Date: 02/26/2008 +# Purpose: testing bug report +# Bug#23533: CREATE SELECT max_binlog_cache_size test +# case needed +############################################################# + +--source include/have_innodb.inc +--source include/have_binlog_format_row.inc +--source include/master-slave.inc + + +--disable_warnings +DROP TABLE IF EXISTS t1,t2; +--enable_warnings + +SET AUTOCOMMIT=0; +SET GLOBAL max_binlog_cache_size=4096; +SHOW VARIABLES LIKE 'max_binlog_cache_size'; + +CREATE TABLE t1 (a INT NOT NULL AUTO_INCREMENT, b TEXT, PRIMARY KEY(a)) ENGINE=InnoDB; + +--disable_query_log +let $i= 1000; +while ($i) +{ + eval INSERT INTO t1 VALUES($i, REPEAT('x', 4096)); + dec $i; +} +--enable_query_log + +SELECT COUNT(*) FROM t1; + +# Copied data from t1 into t2 large than max_binlog_cache_size +START TRANSACTION; +--error 1534 +CREATE TABLE t2 SELECT * FROM t1; +COMMIT; +SHOW TABLES LIKE 't%'; + + +# 5.1 End of Test diff --git a/mysql-test/suite/rpl/r/rpl_invoked_features.result b/mysql-test/suite/rpl/r/rpl_invoked_features.result index aed1dcdbb47..be9169c785b 100644 --- a/mysql-test/suite/rpl/r/rpl_invoked_features.result +++ b/mysql-test/suite/rpl/r/rpl_invoked_features.result @@ -116,23 +116,23 @@ t12 t13 t2 t3 -SELECT table_name FROM information_schema.views WHERE table_schema='test' ORDER BY table_name; +SELECT table_name FROM information_schema.views WHERE table_schema='test'; table_name v1 v11 -SELECT trigger_name, event_manipulation, event_object_table FROM information_schema.triggers WHERE trigger_schema='test' ORDER BY trigger_name; +SELECT trigger_name, event_manipulation, event_object_table FROM information_schema.triggers WHERE trigger_schema='test'; trigger_name event_manipulation event_object_table t11_tr1 INSERT t11 t11_tr2 UPDATE t11 t1_tr1 INSERT t1 t1_tr2 UPDATE t1 -SELECT routine_type, routine_name FROM information_schema.routines WHERE routine_schema='test' ORDER BY routine_name; +SELECT routine_type, routine_name FROM information_schema.routines WHERE routine_schema='test'; routine_type routine_name FUNCTION f1 FUNCTION f2 PROCEDURE p1 PROCEDURE p11 -SELECT event_name, status FROM information_schema.events WHERE event_schema='test' ORDER BY event_name; +SELECT event_name, status FROM information_schema.events WHERE event_schema='test'; event_name status e1 DISABLED e11 DISABLED @@ -276,23 +276,23 @@ t12 t13 t2 t3 -SELECT table_name FROM information_schema.views WHERE table_schema='test' ORDER BY table_name; +SELECT table_name FROM information_schema.views WHERE table_schema='test'; table_name v1 v11 -SELECT trigger_name, event_manipulation, event_object_table FROM information_schema.triggers WHERE trigger_schema='test' ORDER BY trigger_name; +SELECT trigger_name, event_manipulation, event_object_table FROM information_schema.triggers WHERE trigger_schema='test'; trigger_name event_manipulation event_object_table t11_tr1 INSERT t11 t11_tr2 UPDATE t11 t1_tr1 INSERT t1 t1_tr2 UPDATE t1 -SELECT routine_type, routine_name FROM information_schema.routines WHERE routine_schema='test' ORDER BY routine_name; +SELECT routine_type, routine_name FROM information_schema.routines WHERE routine_schema='test'; routine_type routine_name FUNCTION f1 FUNCTION f2 PROCEDURE p1 PROCEDURE p11 -SELECT event_name, status FROM information_schema.events WHERE event_schema='test' ORDER BY event_name; +SELECT event_name, status FROM information_schema.events WHERE event_schema='test'; event_name status e1 SLAVESIDE_DISABLED e11 SLAVESIDE_DISABLED diff --git a/mysql-test/suite/rpl/t/disabled.def b/mysql-test/suite/rpl/t/disabled.def index 20c3ccf0486..53868e070e4 100644 --- a/mysql-test/suite/rpl/t/disabled.def +++ b/mysql-test/suite/rpl/t/disabled.def @@ -11,6 +11,7 @@ ############################################################################## rpl_ddl : BUG#26418 2007-03-01 mleich Slave out of sync after CREATE/DROP TEMPORARY TABLE + ROLLBACK on master +rpl_flushlog_loop : WL#4091 skozlov: temporary disabled because of failures on some platforms rpl_stm_extraColmaster_ndb : WL#3915 : Statement-based replication not supported in ndb. Enable test when supported. rpl_innodb_bug28430 : Bug #32247 2007-11-27 mats Test reports wrong value of "AUTO_INCREMENT" (on a partitioned InnoDB table) rpl_view : Bug#32654: rpl_view.test fails randomly diff --git a/mysql-test/suite/rpl/t/rpl_invoked_features.test b/mysql-test/suite/rpl/t/rpl_invoked_features.test index 17cdc1e61cf..e73964a6e14 100644 --- a/mysql-test/suite/rpl/t/rpl_invoked_features.test +++ b/mysql-test/suite/rpl/t/rpl_invoked_features.test @@ -201,11 +201,16 @@ SET GLOBAL EVENT_SCHEDULER = off; # Check original objects --echo +--sorted_result SHOW TABLES LIKE 't%'; -SELECT table_name FROM information_schema.views WHERE table_schema='test' ORDER BY table_name; -SELECT trigger_name, event_manipulation, event_object_table FROM information_schema.triggers WHERE trigger_schema='test' ORDER BY trigger_name; -SELECT routine_type, routine_name FROM information_schema.routines WHERE routine_schema='test' ORDER BY routine_name; -SELECT event_name, status FROM information_schema.events WHERE event_schema='test' ORDER BY event_name; +--sorted_result +SELECT table_name FROM information_schema.views WHERE table_schema='test'; +--sorted_result +SELECT trigger_name, event_manipulation, event_object_table FROM information_schema.triggers WHERE trigger_schema='test'; +--sorted_result +SELECT routine_type, routine_name FROM information_schema.routines WHERE routine_schema='test'; +--sorted_result +SELECT event_name, status FROM information_schema.events WHERE event_schema='test'; # Check original data --echo @@ -228,11 +233,16 @@ SELECT a,b FROM v11 ORDER BY a; # Check replicated objects --echo +--sorted_result SHOW TABLES LIKE 't%'; -SELECT table_name FROM information_schema.views WHERE table_schema='test' ORDER BY table_name; -SELECT trigger_name, event_manipulation, event_object_table FROM information_schema.triggers WHERE trigger_schema='test' ORDER BY trigger_name; -SELECT routine_type, routine_name FROM information_schema.routines WHERE routine_schema='test' ORDER BY routine_name; -SELECT event_name, status FROM information_schema.events WHERE event_schema='test' ORDER BY event_name; +--sorted_result +SELECT table_name FROM information_schema.views WHERE table_schema='test'; +--sorted_result +SELECT trigger_name, event_manipulation, event_object_table FROM information_schema.triggers WHERE trigger_schema='test'; +--sorted_result +SELECT routine_type, routine_name FROM information_schema.routines WHERE routine_schema='test'; +--sorted_result +SELECT event_name, status FROM information_schema.events WHERE event_schema='test'; # Check replicated data --echo