mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 19:06:14 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			63 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			63 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| # 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;
 | |
| }
 | |
| 
 | |
| BEGIN;
 | |
| INSERT INTO t2 SELECT * FROM t1;
 | |
| 
 | |
| connect (truncate,localhost,root,,);
 | |
| send TRUNCATE TABLE t1;
 | |
| 
 | |
| connection default;
 | |
| INSERT INTO t2 SELECT * FROM t1;
 | |
| SELECT COUNT(*) FROM t2;
 | |
| COMMIT;
 | |
| 
 | |
| connection truncate;
 | |
| --echo # Reaping TRUNCATE TABLE
 | |
| --reap
 | |
| SELECT COUNT(*) FROM t1;
 | |
| SELECT COUNT(*) FROM t2;
 | |
| 
 | |
| connection default;
 | |
| 
 | |
| source include/show_binlog_events.inc;
 | |
| disconnect truncate;
 | |
| DROP TABLE t1,t2;
 | 
