MDEV-19200: shutdown timeout on innodb.undo_truncate_recover

Optimize the test by dropping the table early and by using only
one undo log thread, so that purge will be doing more useful work
and less busy work of suspending and resuming the worker threads.

The test used to cause shutdown timeout on 10.4 on buildbot, and
for me locally when using --mysqld=--innodb-sync-debug.
With these tweaks, it passes for me with --mysqld=--innodb-sync-debug.
This commit is contained in:
Marko Mäkelä 2019-08-16 09:50:54 +03:00
parent 555af003e4
commit fe6eac0cf7
3 changed files with 3 additions and 3 deletions

View File

@ -9,8 +9,8 @@ update t1 set c = 'MariaDB';
update t1 set c = 'InnoDB';
set global debug_dbug = '+d,ib_undo_trunc';
commit;
drop table t1;
call mtr.add_suppression("InnoDB: innodb_undo_tablespaces=0 disables dedicated undo log tablespaces");
call mtr.add_suppression("InnoDB: The transaction log size is too large");
SET GLOBAL innodb_fast_shutdown=0;
FOUND 1 /ib_undo_trunc/ in mysqld.1.err
drop table t1;

View File

@ -0,0 +1 @@
--innodb-purge-threads=1

View File

@ -34,6 +34,7 @@ update t1 set c = 'MariaDB';
update t1 set c = 'InnoDB';
eval set global debug_dbug = '+d,$SEARCH_PATTERN';
commit;
drop table t1;
call mtr.add_suppression("InnoDB: innodb_undo_tablespaces=0 disables dedicated undo log tablespaces");
# FIXME: remove this work-around, and generate less log!
call mtr.add_suppression("InnoDB: The transaction log size is too large");
@ -43,5 +44,3 @@ SET GLOBAL innodb_fast_shutdown=0;
# FIXME: remove this work-around, and generate less log!
--let $restart_parameters= --innodb-buffer-pool-size=16m --innodb-undo-tablespaces=1
--source include/start_mysqld.inc
drop table t1;