1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-07 00:04:31 +03:00

MDEV-23927 Crash in ./mtr --skip-innodb-fast-shutdown innodb.temporary_tables

innodb_preshutdown(): On innodb_fast_shutdown=0, only wait for
transactions to exit if the transaction system had been initialized.

Reviewed by: Vladislav Vaintroub
This commit is contained in:
Marko Mäkelä
2020-10-09 12:47:58 +03:00
parent d312d64146
commit a891fe6aa5
2 changed files with 4 additions and 3 deletions

View File

@@ -131,7 +131,7 @@ AND support IN ('YES', 'DEFAULT', 'ENABLED');
# We cannot use include/restart_mysqld.inc in this particular test, # We cannot use include/restart_mysqld.inc in this particular test,
# because SHOW STATUS would fail due to unwritable (nonexistent) tmpdir. # because SHOW STATUS would fail due to unwritable (nonexistent) tmpdir.
--source include/shutdown_mysqld.inc --source include/shutdown_mysqld.inc
--exec echo "restart: --tmpdir=/dev/null/nonexistent" > $_expect_file_name --exec echo "restart: --tmpdir=/dev/null/nonexistent --skip-innodb-fast-shutdown" > $_expect_file_name
--enable_reconnect --enable_reconnect
--disable_result_log --disable_result_log
--disable_query_log --disable_query_log

View File

@@ -2076,8 +2076,9 @@ void innodb_preshutdown()
better prevent any further changes from being buffered. */ better prevent any further changes from being buffered. */
innodb_change_buffering= 0; innodb_change_buffering= 0;
while (trx_sys.any_active_transactions()) if (trx_sys.is_initialised())
os_thread_sleep(1000); while (trx_sys.any_active_transactions())
os_thread_sleep(1000);
} }
srv_shutdown_bg_undo_sources(); srv_shutdown_bg_undo_sources();
srv_purge_shutdown(); srv_purge_shutdown();