diff options
Diffstat (limited to 'mysql-test/include/maria_empty_logs.inc')
-rw-r--r-- | mysql-test/include/maria_empty_logs.inc | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/mysql-test/include/maria_empty_logs.inc b/mysql-test/include/maria_empty_logs.inc new file mode 100644 index 00000000..24b3e3e6 --- /dev/null +++ b/mysql-test/include/maria_empty_logs.inc @@ -0,0 +1,110 @@ +# Maria help script. +# Cleans up all logs to give recovery a fresh start. +# +# Note that this script relies on the number of threads connect at start of +# this script, so one should run this script with a freshly started server +# for it to work. +# +# API: set mel_keep_control_file=1 if want to keep control file; +# uses vardir, port and socket. + +connection default; +let $default_db=`select database()`; +let $MYSQLD_DATADIR= `SELECT @@datadir`; +let $pid_file=`select @@pid_file`; + +#it will used at end of test for wait_for_status_var.inc primitive +#let $status_var= Threads_connected; +#let $status_var_value= query_get_value(SHOW STATUS LIKE 'Threads_connected', Value, 1); + +connection admin; +-- echo * shut down mysqld, removed logs, restarted it +append_file $MYSQLTEST_VARDIR/tmp/mysqld.1.expect; +wait-maria_empty_logs.inc +EOF + +--source include/mysqladmin_shutdown.inc +--source include/wait_until_no_pidfile.inc + +--disable_warnings +if (!$mel_keep_control_file) +{ + --error 0,1 + remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log_control; +} +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000001; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000002; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000003; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000004; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000005; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000006; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000007; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000008; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000009; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000010; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000011; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000012; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000013; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000014; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000015; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000016; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000017; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000018; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000019; +-- error 0,1 +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000020; +# hope there are not more than these logs... + +-- error 0,1 +remove_file $MYSQLD_DATADIR/aria_recovery.trace; +--enable_warnings + +append_file $MYSQLTEST_VARDIR/tmp/mysqld.1.expect; +restart-maria_empty_logs.inc +EOF + +connection default; +--source include/wait_until_connected_again.inc + +# Make sure that all connections are restored +# This is disabled as 'Threads_connected' can't be trusted' +# (It may be affected by 'check_testcase()') +# --source include/wait_for_status_var.inc +# Restore current database as the effect of "use" was lost after restart + +--disable_query_log +eval use $default_db; +--enable_query_log + +# +# Ensure that we don't get warnings from mysql.priv (used by check_mysqld), +# sys_config or from test running after this one. +# +--disable_query_log +--disable_warnings +--disable_result_log +# Zerofill all Aria tables in mysql and sys +show table status from mysql; +show table status from sys; +--enable_result_log +--enable_warnings +--enable_query_log |