From 3f619478f796eddbba6e39502fe941b285dd97b1 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 4 May 2024 20:00:34 +0200 Subject: Adding upstream version 1:10.11.6. Signed-off-by: Daniel Baumann --- .../suite/binlog/t/binlog_truncate_innodb.test | 45 ++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 mysql-test/suite/binlog/t/binlog_truncate_innodb.test (limited to 'mysql-test/suite/binlog/t/binlog_truncate_innodb.test') diff --git a/mysql-test/suite/binlog/t/binlog_truncate_innodb.test b/mysql-test/suite/binlog/t/binlog_truncate_innodb.test new file mode 100644 index 00000000..511b82bd --- /dev/null +++ b/mysql-test/suite/binlog/t/binlog_truncate_innodb.test @@ -0,0 +1,45 @@ +source include/have_log_bin.inc; +source include/have_innodb.inc; + +let $engine = InnoDB; + +SET @old_binlog_format=@@binlog_format; + +SET BINLOG_FORMAT=ROW; +RESET MASTER; + +source include/binlog_truncate.test; + +--echo # Even though the isolation level might be permissive, truncate +--echo # table follows a stricter isolation as its locking is based on +--echo # (exclusive) metadata locks. + +let $before_truncate = SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; +source include/binlog_truncate.test; + +let $before_truncate = SET TRANSACTION ISOLATION LEVEL READ COMMITTED; +source include/binlog_truncate.test; + +let $before_truncate = SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; +source include/binlog_truncate.test; + +let $before_truncate = SET TRANSACTION ISOLATION LEVEL SERIALIZABLE; +source include/binlog_truncate.test; + +SET BINLOG_FORMAT=STATEMENT; +RESET MASTER; + +source include/binlog_truncate.test; + +--echo # Truncate is not supported for SBR if the isolation level is +--echo # READ UNCOMMITTED or READ COMMITTED. These specific isolation +--echo # levels are tested elsewhere. + +let $before_truncate = SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; +source include/binlog_truncate.test; + +let $before_truncate = SET TRANSACTION ISOLATION LEVEL SERIALIZABLE; +source include/binlog_truncate.test; + +SET @@global.binlog_format = @old_binlog_format; +SET @@session.binlog_format = @old_binlog_format; \ No newline at end of file -- cgit v1.2.3