mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-27912 Fixing inconsistency w.r.t. expect files in tests.
mtr uses group suffix, but some existing inc and test files use server_id for expect files. This patch aims to fix that. For spider: With this change we will not have to maintain a separate version of restart_mysqld.inc for spider, that duplicates code, just because spider tests use different names for expect files, and shutdown_mysqld requires magical names for them. With this change spider tests will also be able to use other features provided by restart_mysqld.inc without code duplication, like the parameter $restart_parameters (see e.g. the testcase mdev_29904.test in commit ef1161e5d4f). Tests run after this change: default, spider, rocksdb, galera, using the following command mtr --parallel=auto --force --max-test-fail=0 --skip-core-file mtr --suite spider,spider/*,spider/*/* \ --skip-test="spider/oracle.*|.*/t\..*" --parallel=auto --big-test \ --force --max-test-fail=0 --skip-core-file mtr --suite galera --parallel=auto mtr --suite rocksdb --parallel=auto
This commit is contained in:
@ -1,5 +1,5 @@
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--let $_expect_file_name= `select regexp_replace(@@tmpdir, '^.*/','')`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/$_expect_file_name.expect
|
||||
|
||||
# There should be a debug crash after using this .inc file
|
||||
--exec echo "wait" > $_expect_file_name
|
||||
|
@ -1,8 +1,8 @@
|
||||
--echo Killing server ...
|
||||
|
||||
# Write file to make mysql-test-run.pl expect the crash, but don't start it
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--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
|
||||
|
||||
# Kill the connected server
|
||||
|
@ -1,5 +1,5 @@
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--let $_expect_file_name= `select regexp_replace(@@tmpdir, '^.*/','')`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/$_expect_file_name.expect
|
||||
|
||||
--echo # Kill the server
|
||||
--exec echo "wait" > $_expect_file_name
|
||||
|
@ -22,8 +22,8 @@ if ($rpl_inited)
|
||||
}
|
||||
|
||||
# Write file to make mysql-test-run.pl expect the "crash", but don't start it
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--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
|
||||
|
||||
--let $server_shutdown_timeout= 60
|
||||
|
@ -18,8 +18,8 @@ disconnect c1;
|
||||
create procedure try_shutdown() shutdown;
|
||||
drop procedure try_shutdown;
|
||||
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--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
|
||||
|
||||
--send shutdown
|
||||
|
@ -6,8 +6,8 @@ if (!$kill_signal)
|
||||
}
|
||||
|
||||
# Write file to make mysql-test-run.pl expect the crash, but don't start it
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--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
|
||||
|
||||
# Kill the connected server
|
||||
|
@ -8,8 +8,8 @@ if ($rpl_inited)
|
||||
}
|
||||
|
||||
# Write file to make mysql-test-run.pl expect the "crash", but don't start it
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--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
|
||||
|
||||
# Send shutdown to the connected server
|
||||
|
@ -35,8 +35,8 @@ UPDATE t1 SET f2 = 'c' WHERE f1 > 2;
|
||||
|
||||
--connection node_2
|
||||
# Write file to make mysql-test-run.pl expect the crash, but don't start it
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--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
|
||||
|
||||
--let KILL_NODE_PIDFILE = `SELECT @@pid_file`
|
||||
|
@ -15,8 +15,8 @@
|
||||
--connection node_2
|
||||
SET GLOBAL debug_dbug="d,crash_last_fragment_commit_after_fragment_removal";
|
||||
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--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
|
||||
|
||||
CREATE TABLE t1 (f1 VARCHAR(30)) ENGINE=InnoDB;
|
||||
|
@ -51,8 +51,8 @@ let $MYSQLD_DATADIR= `select @@datadir`;
|
||||
let datadir= `select @@datadir`;
|
||||
|
||||
# These are from include/shutdown_mysqld.inc and allow to call start_mysqld.inc
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--let $_expect_file_name= `select regexp_replace(@@tmpdir, '^.*/','')`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/$_expect_file_name.expect
|
||||
|
||||
--echo #
|
||||
--echo # Bug #14669848 CRASH DURING ALTER MAKES ORIGINAL TABLE INACCESSIBLE
|
||||
|
@ -29,8 +29,8 @@ call mtr.add_suppression("InnoDB could not find key no 1 with name f2 from dict
|
||||
|
||||
let datadir= `select @@datadir`;
|
||||
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name=$MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--let $_expect_file_name= `select regexp_replace(@@tmpdir, '^.*/','')`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/$_expect_file_name.expect
|
||||
|
||||
CREATE TABLE t1 (f1 INT NOT NULL, f2 INT NOT NULL) ENGINE=innodb;
|
||||
SET debug_dbug='+d,innodb_alter_commit_crash_before_commit';
|
||||
|
@ -25,8 +25,8 @@ CREATE TABLE t1(
|
||||
INDEX(b))
|
||||
ENGINE=InnoDB STATS_PERSISTENT=0;
|
||||
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--let $_expect_file_name= `select regexp_replace(@@tmpdir, '^.*/','')`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/$_expect_file_name.expect
|
||||
|
||||
# The flag innodb_change_buffering_debug is only available in debug builds.
|
||||
# It instructs InnoDB to try to evict pages from the buffer pool when
|
||||
|
@ -37,8 +37,8 @@ SET GLOBAL innodb_file_per_table = 1;
|
||||
CREATE TABLE t1 (c1 INT) ENGINE = InnoDB;
|
||||
INSERT INTO t1 VALUES(1),(2),(3);
|
||||
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--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
|
||||
SET SESSION debug_dbug="+d,ib_discard_before_commit_crash";
|
||||
|
@ -12,8 +12,8 @@ select user,state from information_schema.processlist order by 2;
|
||||
set global debug_dbug='+d,only_kill_system_threads';
|
||||
set global innodb_fast_shutdown=0;
|
||||
|
||||
let $_server_id= `SELECT @@server_id`;
|
||||
let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect;
|
||||
--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;
|
||||
send shutdown;
|
||||
|
||||
|
@ -30,8 +30,8 @@ while ($i)
|
||||
}
|
||||
--enable_query_log
|
||||
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--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
|
||||
|
||||
SET debug_dbug = '+d,increase_mtr_checkpoint_size';
|
||||
|
@ -110,8 +110,6 @@ SET GLOBAL innodb_buffer_pool_size = @innodb_buffer_pool_size_orig;
|
||||
--echo #
|
||||
|
||||
--let MYSQLD_DATADIR= `SELECT @@datadir`
|
||||
--let SERVER_ID= `SELECT @@server_id`
|
||||
--let EXPECT_FILE_NAME= $MYSQLTEST_VARDIR/tmp/mysqld.$SERVER_ID.expect
|
||||
|
||||
--source include/shutdown_mysqld.inc
|
||||
|
||||
|
@ -11,7 +11,7 @@
|
||||
--source include/no_valgrind_without_big.inc
|
||||
|
||||
--disable_query_log
|
||||
call mtr.add_suppression("Can't create/write to file '/dev/null/nonexistent/ib");
|
||||
call mtr.add_suppression("Can't create/write to file '/dev/null/.*/ib");
|
||||
call mtr.add_suppression("InnoDB: Unable to create temporary file");
|
||||
call mtr.add_suppression("last file in setting innodb_temp_data_file_path");
|
||||
call mtr.add_suppression("The table 't1' is full");
|
||||
@ -134,7 +134,7 @@ AND support IN ('YES', 'DEFAULT', 'ENABLED');
|
||||
# We cannot use include/restart_mysqld.inc in this particular test,
|
||||
# because SHOW STATUS would fail due to unwritable (nonexistent) tmpdir.
|
||||
--source include/shutdown_mysqld.inc
|
||||
--exec echo "restart: --tmpdir=/dev/null/nonexistent" > $_expect_file_name
|
||||
--exec echo "restart: --tmpdir=/dev/null/$MYSQL_TMP_DIR" > $_expect_file_name
|
||||
--enable_reconnect
|
||||
--disable_result_log
|
||||
--disable_query_log
|
||||
|
@ -104,7 +104,8 @@ disconnect con1;
|
||||
DROP TABLE t1;
|
||||
|
||||
--echo # Case 3: Test insert crash recovery
|
||||
--let $_expect_file_name=$MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--let $_expect_file_name= `select regexp_replace(@@tmpdir, '^.*/','')`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/$_expect_file_name.expect
|
||||
|
||||
CREATE TABLE t1 (
|
||||
FTS_DOC_ID BIGINT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
|
||||
|
@ -9,8 +9,8 @@ if ($rpl_inited)
|
||||
|
||||
# Write file to make mysql-test-run.pl expect the "crash", but don't start
|
||||
# it until it's told to
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--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
|
||||
|
||||
# Send shutdown to the connected server and give
|
||||
|
@ -16,6 +16,7 @@
|
||||
# restart server to change error log and ignore corruptopn on startup
|
||||
--let $_mysqld_option=--log-error=$LOG --rocksdb_allow_to_start_after_corruption=1
|
||||
--source include/restart_mysqld_with_option.inc
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
|
||||
--echo #
|
||||
--echo # Test server crashes on corrupted data and restarts
|
||||
|
@ -4,8 +4,8 @@
|
||||
DROP TABLE IF EXISTS t1;
|
||||
--enable_warnings
|
||||
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--let $_expect_file_name= `select regexp_replace(@@tmpdir, '^.*/','')`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/$_expect_file_name.expect
|
||||
--let $_cache_file_name= $MYSQLTEST_VARDIR/tmp/persistent_cache
|
||||
--exec echo "wait" >$_expect_file_name
|
||||
|
||||
|
@ -17,8 +17,8 @@ CREATE TABLE t2 (pk int primary key) ENGINE=ROCKSDB PARTITION BY KEY(pk) PARTITI
|
||||
|
||||
# Write file to make mysql-test-run.pl expect the "crash", but don't restart the
|
||||
# server until it is told to
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--let $_expect_file_name= `select regexp_replace(@@tmpdir, '^.*/','')`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/$_expect_file_name.expect
|
||||
--let LOG=$MYSQLTEST_VARDIR/tmp/validate_datadic.err
|
||||
|
||||
--exec echo "wait" >$_expect_file_name
|
||||
|
@ -7,8 +7,8 @@ SET @@global.rocksdb_rate_limiter_bytes_per_sec = 10000;
|
||||
|
||||
# Write file to make mysql-test-run.pl expect the "crash", but don't restart the
|
||||
# server until it is told to
|
||||
--let $_server_id= `SELECT @@server_id`
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
|
||||
--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
|
||||
|
||||
# Send shutdown to the connected server and give it 10 seconds to die before
|
||||
|
@ -1,8 +0,0 @@
|
||||
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.1.1.expect
|
||||
|
||||
--exec echo "wait" > $_expect_file_name
|
||||
--shutdown_server
|
||||
--source include/wait_until_disconnected.inc
|
||||
--exec echo "restart" > $_expect_file_name
|
||||
--enable_reconnect
|
||||
--source include/wait_until_connected_again.inc
|
@ -9,4 +9,5 @@ CREATE FUNCTION spider_bg_direct_sql RETURNS INT SONAME 'ha_spider.so';
|
||||
ERROR HY000: Can't execute the query because you have a conflicting read lock
|
||||
SELECT * FROM t;
|
||||
c
|
||||
# restart
|
||||
DROP TABLE t;
|
||||
|
@ -6,6 +6,6 @@ FLUSH TABLES WITH READ LOCK;
|
||||
CREATE FUNCTION spider_bg_direct_sql RETURNS INT SONAME 'ha_spider.so';
|
||||
SELECT * FROM t;
|
||||
|
||||
--source include/restart_spider.inc
|
||||
--source include/restart_mysqld.inc
|
||||
|
||||
DROP TABLE t;
|
||||
|
Reference in New Issue
Block a user