MDEV-15418 changed InnoDB to use the READ UNCOMMITTED isolation level when the transaction recovery is disabled by setting innodb_force_recovery to 5 or 6. Alas, CHECK TABLE would still internally use REPEATABLE READ. After merging the MDEV-18936 fix, this would cause a crash in the test innodb.ibuf_not_empty:
CURRENT_TEST: innodb.ibuf_not_empty
|
mysqltest: At line 50: query 'check table t1' failed: 2013: Lost connection to MySQL server during query
|
…
|
Version: '10.3.14-MariaDB-debug-log' socket: '/dev/shm/10.3/mysql-test/var/tmp/mysqld.1.sock' port: 16000 Source distribution
|
2019-03-17 12:48:06 3 [ERROR] InnoDB: Failed to find tablespace for table `test`.`t1` in the cache. Attempting to load the tablespace with space id 5
|
2019-03-17 12:48:06 3 [Warning] InnoDB: Allocated tablespace ID 5 for test/t1, old maximum was 0
|
2019-03-17 12:48:06 3 [Warning] InnoDB: A transaction id in a record of table `test`.`t1` is newer than the system-wide maximum.
|
mysqld: /mariadb/10.3/storage/innobase/trx/trx0sys.cc:62: static void ReadView::check_trx_id_sanity(trx_id_t, const table_name_t &): Assertion `0' failed.
|