diff --git a/mysql-test/suite/innodb/r/ibuf_not_empty.result b/mysql-test/suite/innodb/r/ibuf_not_empty.result index 7c61e74850b..ed2db836c06 100644 --- a/mysql-test/suite/innodb/r/ibuf_not_empty.result +++ b/mysql-test/suite/innodb/r/ibuf_not_empty.result @@ -22,5 +22,7 @@ check table t1; Table Op Msg_type Msg_text test.t1 check Warning InnoDB: Index 'b' contains #### entries, should be 4096. test.t1 check error Corrupt +SET GLOBAL innodb_purge_rseg_truncate_frequency=1; +InnoDB 0 transactions not purged SET GLOBAL innodb_fast_shutdown=0; DROP TABLE t1; diff --git a/mysql-test/suite/innodb/t/ibuf_not_empty.test b/mysql-test/suite/innodb/t/ibuf_not_empty.test index 33118ad6bf5..d0264e85678 100644 --- a/mysql-test/suite/innodb/t/ibuf_not_empty.test +++ b/mysql-test/suite/innodb/t/ibuf_not_empty.test @@ -77,6 +77,12 @@ check table t1; --let $restart_parameters= --source include/restart_mysqld.inc + +# Ensure that the slow shutdown will not time out due to running purge. +SET GLOBAL innodb_purge_rseg_truncate_frequency=1; +--source include/wait_all_purged.inc +# The change buffer merge for the injected corruption must complete +# without exceeding the 60-second shutdown_server timeout. SET GLOBAL innodb_fast_shutdown=0; --source include/restart_mysqld.inc