From a175314c3e5827eb193872241446f2f8f5c9d33c Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 4 May 2024 20:07:14 +0200 Subject: Adding upstream version 1:10.5.12. Signed-off-by: Daniel Baumann --- mysql-test/suite/rpl/t/rpl_trunc_temp.test | 57 ++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 mysql-test/suite/rpl/t/rpl_trunc_temp.test (limited to 'mysql-test/suite/rpl/t/rpl_trunc_temp.test') diff --git a/mysql-test/suite/rpl/t/rpl_trunc_temp.test b/mysql-test/suite/rpl/t/rpl_trunc_temp.test new file mode 100644 index 00000000..1ef0fced --- /dev/null +++ b/mysql-test/suite/rpl/t/rpl_trunc_temp.test @@ -0,0 +1,57 @@ +# ==== Purpose ==== +# +# Verify that Slave_open_temp_tables is increased when a temporary +# table is opened on the slave, and decreased when a temporary table +# is closed on the slave, and that it is preserved during 'DELETE FROM +# table' and 'TRUNCATE table'. +# +# ==== Method ==== +# +# Create a temporary table on master, insert rows, and try: +# - delete rows from the table +# - truncate the table +# - drop the table +# +# ==== Related bugs ==== +# +# BUG#17137 Running "truncate table" on temporary table leaves the table open on a slave +# +# Bug in this test: BUG#37493: rpl_trunc_temp.test nondeterministic + + +# Requires statement-based logging since temporary tables are not +# logged in row-based logging +-- source include/have_binlog_format_mixed_or_statement.inc + +source include/master-slave.inc; + +create temporary table t1 (n int); +insert into t1 values(1); +sync_slave_with_master; +show status like 'Slave_open_temp_tables'; + +# Perform a delete from temp table +connection master; +delete from t1; +sync_slave_with_master; +show status like 'Slave_open_temp_tables'; + +# Perform truncate on temp table +connection master; +truncate t1; +sync_slave_with_master; +show status like 'Slave_open_temp_tables'; + +# Disconnect the master, temp table on slave should disappear +disconnect master; + +connection slave; + +# Wait until drop of temp tables appers in slave's binlog +let $wait_binlog_event= DROP; +source include/wait_for_binlog_event.inc; + +show status like 'Slave_open_temp_tables'; + + +--source include/rpl_end.inc -- cgit v1.2.3