Current Path : /home/usr.opt/mysql57/mysql-test/suite/binlog/r/ |
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 |
Current File : /home/usr.opt/mysql57/mysql-test/suite/binlog/r/binlog_stm_drop_tmp_tbl.result |
DROP DATABASE IF EXISTS `drop-temp+table-test`; RESET MASTER; CREATE DATABASE `drop-temp+table-test`; USE `drop-temp+table-test`; CREATE TEMPORARY TABLE shortn1 (a INT); CREATE TEMPORARY TABLE `table:name` (a INT); CREATE TEMPORARY TABLE shortn2 (a INT); CREATE TEMPORARY TABLE tmp(c1 int); CREATE TEMPORARY TABLE tmp1(c1 int); CREATE TEMPORARY TABLE tmp2(c1 int); CREATE TEMPORARY TABLE tmp3(c1 int); CREATE TABLE t(c1 int); DROP TEMPORARY TABLE IF EXISTS tmp; DROP TEMPORARY TABLE IF EXISTS tmp; DROP TEMPORARY TABLE IF EXISTS tmp, tmp1; DROP TEMPORARY TABLE tmp3; DROP TABLE IF EXISTS tmp2, t; DROP TABLE IF EXISTS tmp2, t; SELECT GET_LOCK("a",10); GET_LOCK("a",10) 1 USE test; SELECT GET_LOCK("a",10); GET_LOCK("a",10) 1 include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Query # # CREATE DATABASE `drop-temp+table-test` master-bin.000001 # Query # # use `drop-temp+table-test`; CREATE TEMPORARY TABLE shortn1 (a INT) master-bin.000001 # Query # # use `drop-temp+table-test`; CREATE TEMPORARY TABLE `table:name` (a INT) master-bin.000001 # Query # # use `drop-temp+table-test`; CREATE TEMPORARY TABLE shortn2 (a INT) master-bin.000001 # Query # # use `drop-temp+table-test`; CREATE TEMPORARY TABLE tmp(c1 int) master-bin.000001 # Query # # use `drop-temp+table-test`; CREATE TEMPORARY TABLE tmp1(c1 int) master-bin.000001 # Query # # use `drop-temp+table-test`; CREATE TEMPORARY TABLE tmp2(c1 int) master-bin.000001 # Query # # use `drop-temp+table-test`; CREATE TEMPORARY TABLE tmp3(c1 int) master-bin.000001 # Query # # use `drop-temp+table-test`; CREATE TABLE t(c1 int) master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TEMPORARY TABLE IF EXISTS `tmp` /* generated by server */ master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TEMPORARY TABLE IF EXISTS `tmp` /* generated by server */ master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TEMPORARY TABLE IF EXISTS `tmp1`,`tmp` /* generated by server */ master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TEMPORARY TABLE `tmp3` /* generated by server */ master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TEMPORARY TABLE IF EXISTS `tmp2` /* generated by server */ master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TABLE IF EXISTS `t` /* generated by server */ master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TABLE IF EXISTS `tmp2`,`t` /* generated by server */ master-bin.000001 # Query # # use `drop-temp+table-test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `shortn2`,`table:name`,`shortn1` DROP DATABASE `drop-temp+table-test`; RESET MASTER; CREATE TABLE t1 ( i text ); CREATE TEMPORARY TABLE ttmp1 ( i text ); SET @@session.binlog_format=ROW; INSERT INTO t1 VALUES ('1'); SELECT @@session.binlog_format; @@session.binlog_format ROW include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Query # # use `test`; CREATE TABLE t1 ( i text ) master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE ttmp1 ( i text ) master-bin.000001 # Query # # BEGIN master-bin.000001 # Table_map # # table_id: # (test.t1) master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F master-bin.000001 # Query # # COMMIT master-bin.000001 # Query # # use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `ttmp1` DROP TABLE t1; RESET MASTER; # # Bug 83003: Using temporary tables on slaves increases GTID sequence number # SET @saved_binlog_format= @@SESSION.binlog_format; SET SESSION binlog_format= STATEMENT; CREATE TEMPORARY TABLE temp_needs_logging(a INT) ENGINE=InnoDB; SET SESSION binlog_format= @saved_binlog_format; CREATE TEMPORARY TABLE temp_trx(a INT) ENGINE=InnoDB; CREATE TEMPORARY TABLE temp_non_trx(a INT) ENGINE=MyISAM; CREATE TEMPORARY TABLE temp_needs_logging_in_stmt(a INT) ENGINE=InnoDB; SET SESSION sql_log_bin= 0; CREATE TEMPORARY TABLE temp_binlog_disabled(a INT) ENGINE=InnoDB; SET SESSION sql_log_bin= 1; include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE temp_needs_logging(a INT) ENGINE=InnoDB master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE temp_trx(a INT) ENGINE=InnoDB master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE temp_non_trx(a INT) ENGINE=MyISAM master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE temp_needs_logging_in_stmt(a INT) ENGINE=InnoDB master-bin.000001 # Query # # use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `temp_needs_logging_in_stmt`,`temp_trx`,`temp_needs_logging` master-bin.000001 # Query # # use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `temp_non_trx` # # BUG#21638823: ASSERTION FAILED: # THD->GET_TRANSACTION()->IS_EMPTY(TRANSACTION_CTX::STMT) || THD # # Test case first checks that it is possible to terminate a connection # with a temporary table (which will implicitly remove the temporary # table) while in XA_idle. Then checks that an explicit DROP TEMPORARY # TABLE is rejected with ER_XAER_RMFAIL as required by the XA spec. # # Reset master to avoid clutter when dumping binlog RESET MASTER; # Create separate connection # Create temporary table CREATE TEMPORARY TABLE temp(i int); INSERT INTO temp VALUES (0), (1), (2), (3); # Start XA txn and leave it in XA_idle XA START 'idle_at_disconnect'; XA END 'idle_at_disconnect'; # Terminate connection to verify that the temporary table can be # removed at disconnect even in XA_idle, and that this does not # cause problems for replication # Dump binlog to show that, either the generated DROP comes after tx # commit (stmt or mixed), or there is no trace of the XA txn and # the temp table (row) include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE temp(i int) master-bin.000001 # Query # # BEGIN master-bin.000001 # Query # # use `test`; INSERT INTO temp VALUES (0), (1), (2), (3) master-bin.000001 # Query # # COMMIT master-bin.000001 # Query # # use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `temp` # # Start XA txn and leave in XA_idle XA START 'idle_when_drop_temp'; XA END 'idle_when_drop_temp'; # Verify that explicit DROP TEMPORARY TABLE is rejected in XA_idle DROP TEMPORARY TABLE IF EXISTS t; Got one of the listed errors XA ROLLBACK 'idle_when_drop_temp'; RESET MASTER; # # BUG#28642318: POINT IN TIME RECOVERY USING MYSQLBINLOG BROKEN # WITH TEMPORARY TABLE -> ERRORS # Test case for DELETE query. RESET MASTER; # Set up. SET @save_binlog_format= @@session.binlog_format; SET @@session.binlog_format=STATEMENT; CREATE TABLE t1 (a INT) ENGINE=INNODB; SET @@session.binlog_format=STATEMENT; CREATE TEMPORARY TABLE t1 (b BLOB) ENGINE=INNODB; DELETE d1, d2 FROM t1 AS d1, t1 AS d2 WHERE d1.a<>d2.a; DROP TABLE t1; # DELETE query fails with table re-open error without patch. # Clean up. DROP TABLE IF EXISTS t1; DROP TABLE IF EXISTS t1; RESET MASTER; # Test case for DROP query. CREATE TABLE t1 (a INT) ENGINE=INNODB; CREATE TEMPORARY TABLE t1 (b BLOB) ENGINE=INNODB; DROP TABLE t1; DROP TABLE t1; # DROP table query fails with unknown table error without patch. # Clean up SET @@session.binlog_format= @save_binlog_format; RESET MASTER;