summaryrefslogtreecommitdiff
path: root/mysql-test/include
diff options
context:
space:
mode:
authorunknown <anozdrin/alik@booka.site>2006-07-20 13:24:12 +0400
committerunknown <anozdrin/alik@booka.site>2006-07-20 13:24:12 +0400
commitd8180d44b81519ee1d1db8fe79caa2a6d1d6a5eb (patch)
tree565aea909bd18f5ad6cf3c333ae9891a59139c0f /mysql-test/include
parentec4a7522ce6b3363881b3b9b2d7140e672297347 (diff)
downloadmariadb-git-d8180d44b81519ee1d1db8fe79caa2a6d1d6a5eb.tar.gz
Fix for BUG#20716: SHOW INSTANCES statement causes races in IM tests.
Fix for the bug in mysql-test-run.pl which prevents other tests succeed after IM-test failure. The idea of the fix of BUG#20716 is to: 1. Check each SHOW INSTANCES statement, add necessary "sleep" instruction before; 2. Move all environment checkings into the one file and include it everywhere. mysql-test/mysql-test-run.pl: Fix bug in mysql-test-run.pl -- kill leftovers if some guarded mysqld-instance is still alive after IM shutdown. mysql-test/r/im_daemon_life_cycle.result: Updated result file. mysql-test/r/im_life_cycle.result: Updated result file. mysql-test/r/im_options_set.result: Updated result file. mysql-test/r/im_options_unset.result: Updated result file. mysql-test/r/im_utils.result: Updated result file. mysql-test/t/im_daemon_life_cycle.imtest: Include im_check_env.inc for the checking of environment. mysql-test/t/im_life_cycle.imtest: Include im_check_env.inc for the checking of environment. mysql-test/t/im_options_set.imtest: Include im_check_env.inc for the checking of environment. mysql-test/t/im_options_unset.imtest: Include im_check_env.inc for the checking of environment. mysql-test/t/im_utils.imtest: Include im_check_env.inc for the checking of environment. mysql-test/include/im_check_env.inc: A new file to be included in each IM-test. The statements in the file ensure that starting conditions (environment) are as expected.
Diffstat (limited to 'mysql-test/include')
-rw-r--r--mysql-test/include/im_check_env.inc27
1 files changed, 27 insertions, 0 deletions
diff --git a/mysql-test/include/im_check_env.inc b/mysql-test/include/im_check_env.inc
new file mode 100644
index 00000000000..169edbac6b3
--- /dev/null
+++ b/mysql-test/include/im_check_env.inc
@@ -0,0 +1,27 @@
+# This file is intended to be used in each IM-test. It contains stamements,
+# that ensure that starting conditions (environment) for the IM-test are as
+# expected.
+
+# Wait for mysqld1 (guarded instance) to start.
+
+--exec $MYSQL_TEST_DIR/t/wait_for_process.sh $IM_MYSQLD1_PATH_PID 30 started
+
+# Check the running instances.
+
+--connect (mysql1_con,localhost,root,,mysql,$IM_MYSQLD1_PORT,$IM_MYSQLD1_SOCK)
+
+--connection mysql1_con
+
+SHOW VARIABLES LIKE 'server_id';
+
+--connection default
+
+# Let IM detect that mysqld1 is online. This delay should be longer than
+# monitoring interval.
+
+--sleep 2
+
+# Check that IM understands that mysqld1 is online, while mysqld2 is
+# offline.
+
+SHOW INSTANCES;