mirror of
https://github.com/MariaDB/server.git
synced 2025-11-28 17:36:30 +03:00
if we didn't write the CREATE TEMPORARY TABLE statement. - Enable old code from one of my older changesets that didn't make into 10.0 - Fix test cased that failed as they expected DROP TEMPORARY TABLE in the log.
81 lines
3.0 KiB
Plaintext
81 lines
3.0 KiB
Plaintext
CREATE TABLE t1 (i int unique) ENGINE=innodb;
|
|
reset master;
|
|
begin;
|
|
insert into t1 values (1),(2);
|
|
*** the following UPDATE query wont generate any updates for the binlog ***
|
|
update t1 set i = 3 where i < 3;
|
|
ERROR 23000: Duplicate entry '3' for key 'i'
|
|
commit;
|
|
*** Results of the test: the binlog must have only Write_rows events not any Update_rows ***
|
|
include/show_binlog_events.inc
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # BEGIN GTID #-#-#
|
|
master-bin.000001 # Table_map # # table_id: # (test.t1)
|
|
master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F
|
|
master-bin.000001 # Xid # # COMMIT /* XID */
|
|
delete from t1;
|
|
reset master;
|
|
begin;
|
|
insert into t1 values (1),(2);
|
|
*** the following UPDATE query wont generate any updates for the binlog ***
|
|
insert into t1 values (3),(4),(1),(2);
|
|
ERROR 23000: Duplicate entry '1' for key 'i'
|
|
commit;
|
|
*** Results of the test: the binlog must have only one Write_rows event not two ***
|
|
include/show_binlog_events.inc
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # BEGIN GTID #-#-#
|
|
master-bin.000001 # Table_map # # table_id: # (test.t1)
|
|
master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F
|
|
master-bin.000001 # Xid # # COMMIT /* XID */
|
|
drop table t1;
|
|
RESET MASTER;
|
|
CREATE TABLE t1 ( c1 int , primary key (c1)) ENGINE=InnoDB;
|
|
INSERT INTO t1 VALUES (1), (2), (3);
|
|
CREATE TEMPORARY TABLE IF NOT EXISTS t2 LIKE t1;
|
|
TRUNCATE TABLE t2;
|
|
DROP TABLE t1;
|
|
###############################################
|
|
### assertion: No event for 'TRUNCATE TABLE t2'
|
|
###############################################
|
|
include/show_binlog_events.inc
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; CREATE TABLE t1 ( c1 int , primary key (c1)) ENGINE=InnoDB
|
|
master-bin.000001 # Gtid # # BEGIN GTID #-#-#
|
|
master-bin.000001 # Table_map # # table_id: # (test.t1)
|
|
master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F
|
|
master-bin.000001 # Xid # # COMMIT /* XID */
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t1` /* generated by server */
|
|
###############################################
|
|
RESET MASTER;
|
|
CREATE TEMPORARY TABLE t1 (c1 int) Engine=InnoDB;
|
|
INSERT INTO t1 VALUES (1), (2), (3);
|
|
TRUNCATE t1;
|
|
DROP TEMPORARY TABLE t1;
|
|
###############################################
|
|
### assertion: No event for 'TRUNCATE TABLE t1'
|
|
###############################################
|
|
include/show_binlog_events.inc
|
|
###############################################
|
|
#
|
|
# Bug#12346411 SQL/LOG.CC:6509: ASSERTION `PREPARED_XIDS > 0' FAILED
|
|
#
|
|
DROP TABLE IF EXISTS t1, t2;
|
|
CREATE TABLE t1(a INT PRIMARY KEY) engine=innodb;
|
|
CREATE TABLE t2(a INT) engine=myisam;
|
|
INSERT INTO t1 VALUES (1);
|
|
START TRANSACTION;
|
|
INSERT INTO t2 VALUES (1);
|
|
INSERT IGNORE INTO t1 VALUES (1);
|
|
Warnings:
|
|
Warning 1062 Duplicate entry '1' for key 'PRIMARY'
|
|
COMMIT;
|
|
INSERT INTO t1 VALUES (2);
|
|
START TRANSACTION;
|
|
INSERT INTO t2 VALUES (2);
|
|
UPDATE IGNORE t1 SET a=1 WHERE a=2;
|
|
COMMIT;
|
|
DROP TABLE t1, t2;
|