# BUG #36763: TRUNCATE TABLE fails to replicate when stmt-based # binlogging is not supported. # This should always be logged as a statement, even when executed as a # row-by-row deletion. # $before_truncate A statement to execute (just) before issuing the # TRUNCATE TABLE eval CREATE TABLE t1 (a INT) ENGINE=$engine; eval CREATE TABLE t2 (a INT) ENGINE=$engine; INSERT INTO t2 VALUES (1),(2),(3); let $binlog_start = query_get_value("SHOW MASTER STATUS", Position, 1); if ($before_truncate) { eval $before_truncate; } --echo **** Truncate of empty table shall be logged TRUNCATE TABLE t1; if ($before_truncate) { eval $before_truncate; } TRUNCATE TABLE t2; source include/show_binlog_events.inc; DROP TABLE t1,t2; --echo # --echo # Bug#42643: InnoDB does not support replication of TRUNCATE TABLE --echo # eval CREATE TABLE t1 (a INT) ENGINE=$engine; eval CREATE TABLE t2 (a INT) ENGINE=$engine; INSERT INTO t1 VALUES (1),(2); let $binlog_start = query_get_value("SHOW MASTER STATUS", Position, 1); if ($before_truncate) { eval $before_truncate; } --echo # Connection: default BEGIN; INSERT INTO t2 SELECT * FROM t1; connect (truncate,localhost,root,,); --echo # Connection: truncate send TRUNCATE TABLE t1; connection default; --echo # Connection: default INSERT INTO t2 SELECT * FROM t1; SELECT COUNT(*) FROM t2; COMMIT; connection truncate; --echo # Connection: truncate --echo # Reaping TRUNCATE TABLE --reap SELECT COUNT(*) FROM t1; SELECT COUNT(*) FROM t2; connection default; --echo # Connection: default source include/show_binlog_events.inc; disconnect truncate; DROP TABLE t1,t2;
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
binlog.test | File | 10.68 KB | 0644 |
|
binlog_cache_stat.test | File | 13.09 KB | 0644 |
|
binlog_implicit_commit.inc | File | 1.6 KB | 0644 |
|
binlog_innodb.inc | File | 3.9 KB | 0644 |
|
binlog_insert_delayed.test | File | 2.38 KB | 0644 |
|
binlog_mysqlbinlog_fill.inc | File | 1.76 KB | 0644 |
|
binlog_mysqlbinlog_row.inc | File | 13.06 KB | 0644 |
|
binlog_mysqlbinlog_start_stop.inc | File | 1.81 KB | 0644 |
|
binlog_truncate.test | File | 1.6 KB | 0644 |
|
blackhole.test | File | 5.85 KB | 0644 |
|
ctype_cp932.test | File | 27.76 KB | 0644 |
|
ctype_cp932_binlog.test | File | 1.25 KB | 0644 |
|
ctype_ucs_binlog.test | File | 938 B | 0644 |
|
database.test | File | 2.57 KB | 0644 |
|
drop_table.test | File | 547 B | 0644 |
|
drop_temp_table.test | File | 4.84 KB | 0644 |
|
implicit.test | File | 567 B | 0644 |
|
insert_select-binlog.test | File | 1.03 KB | 0644 |
|
mix_innodb_myisam_binlog.test | File | 15.43 KB | 0644 |
|
mix_innodb_myisam_side_effects.test | File | 6.47 KB | 0644 |
|
mysqlbinlog_row_engine.inc | File | 46.03 KB | 0644 |
|
mysqlbinlog_start_stop_1.inc | File | 1.71 KB | 0644 |
|
mysqlbinlog_start_stop_2.inc | File | 1.27 KB | 0644 |
|