summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2019-11-06 17:56:56 +0200
committerMarko Mäkelä <marko.makela@mariadb.com>2019-11-06 17:56:56 +0200
commit352e7667877ec6603aff5234c003ef8c11885cd8 (patch)
treec1e9e72daf6514277f91eec97e0d684e44aba5d1
parent908ca4668d5cb415f4737c8617ffb84f2c15855d (diff)
downloadmariadb-git-352e7667877ec6603aff5234c003ef8c11885cd8.tar.gz
MDEV-20934: Make the test more robustmariadb-10.3.20
Due to MDEV-12288, the slow shutdown in MariaDB 10.3 will include resetting the DB_TRX_ID for all inserted records. This might cause the 60-second shutdown_server timeout to be exceeded. Let us wait for the purge to complete before initiating slow shutdown.
-rw-r--r--mysql-test/suite/innodb/r/ibuf_not_empty.result2
-rw-r--r--mysql-test/suite/innodb/t/ibuf_not_empty.test6
2 files changed, 8 insertions, 0 deletions
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