1source include/have_innodb.inc; 2source include/have_binlog_format_row.inc; 3source include/master-slave.inc; 4# 5# BUG#20574550 6# CREATE TABLE LIKE <TEMP_TABLE> does not preserve original table storage 7# engine when using row based replication 8# 9--connection master 10 11# Define temp_t1 and temp_t2 storage engines 12--let $engine_temp_t1= InnoDB 13--let $engine_temp_t2= MyISAM 14 15# Create the two temporary tables 16--eval CREATE TEMPORARY TABLE temp_t1 (c1 INT) ENGINE=$engine_temp_t1 17--eval CREATE TEMPORARY TABLE temp_t2 (c1 INT) ENGINE=$engine_temp_t2 18 19# Create t1 and t2 based on temporary tables 20CREATE TABLE t1 LIKE temp_t1; 21CREATE TABLE t2 LIKE temp_t2; 22--sync_slave_with_master 23 24# On master 25--connection master 26# Assert that t1 and t2 have the same storage engines as temp_t1 and temp_t2 27--let $engine_t1= query_get_value(SHOW TABLE STATUS WHERE Name='t1', Engine, 1) 28--let $assert_cond= "$engine_t1" = "$engine_temp_t1" 29--let $assert_text= "t1 on master and temp_t1 have the same storage engine" 30--source include/assert.inc 31 32--let $engine_t2= query_get_value(SHOW TABLE STATUS WHERE Name='t2', Engine, 1) 33--let $assert_cond= "$engine_t2" = "$engine_temp_t2" 34--let $assert_text= "t2 on master and temp_t2 have the same storage engine" 35--source include/assert.inc 36 37# On slave 38--connection slave 39# Assert that t1 and t2 have the same storage engines as temp_t1 and temp_t2 40--let $engine_t1= query_get_value(SHOW TABLE STATUS WHERE Name='t1', Engine, 1) 41--let $assert_cond= "$engine_t1" = "$engine_temp_t1" 42--let $assert_text= "t1 on slave and temp_t1 have the same storage engine" 43--source include/assert.inc 44 45--let $engine_t2= query_get_value(SHOW TABLE STATUS WHERE Name='t2', Engine, 1) 46--let $assert_cond= "$engine_t2" = "$engine_temp_t2" 47--let $assert_text= "t2 on slave and temp_t2 have the same storage engine" 48--source include/assert.inc 49 50# Cleanup 51--connection master 52DROP TEMPORARY TABLE temp_t1, temp_t2; 53DROP TABLE t1, t2; 54--source include/rpl_end.inc 55 56