diff options
Diffstat (limited to 'mysql-test/include/shutdown_mysqld.inc')
-rw-r--r-- | mysql-test/include/shutdown_mysqld.inc | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/mysql-test/include/shutdown_mysqld.inc b/mysql-test/include/shutdown_mysqld.inc new file mode 100644 index 00000000..fc297256 --- /dev/null +++ b/mysql-test/include/shutdown_mysqld.inc @@ -0,0 +1,52 @@ +# ==== Usage ==== +# +# [--let $shutdown_timeout= 60] +# [--let $allow_rpl_inited= 1] +# --source include/shutdown_mysqld.inc + +# The default value is empty +--let $server_shutdown_timeout= + +if ($shutdown_timeout) +{ + --let $server_shutdown_timeout= $shutdown_timeout +} + +# This is the first half of include/restart_mysqld.inc. +if ($rpl_inited) +{ + if (!$allow_rpl_inited) + { + --die ERROR IN TEST: When using the replication test framework (master-slave.inc, rpl_init.inc etc), use rpl_restart_server.inc instead of restart_mysqld.inc. If you know what you are doing and you really have to use restart_mysqld.inc, set allow_rpl_inited=1 before you source restart_mysqld.inc + } +} + +# Write file to make mysql-test-run.pl expect the "crash", but don't start it +--let $_expect_file_name= `select regexp_replace(@@tmpdir, '^.*/','')` +--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/$_expect_file_name.expect +--exec echo "wait" > $_expect_file_name + +# Avoid warnings from connection threads that does not have time to exit +--disable_query_log +set @@global.log_warnings=0; +--enable_query_log + +--let $server_shutdown_timeout= 60 +if ($VALGRIND_TEST) +{ + --let $server_shutdown_timeout= 300 +} + +if ($shutdown_timeout) +{ + --let $server_shutdown_timeout= $shutdown_timeout +} +if ($shutdown_timeout == 0) +{ + --let $server_shutdown_timeout= 0 +} + +# Send shutdown to the connected server +--shutdown_server $server_shutdown_timeout +--source include/wait_until_disconnected.inc + |