1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

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.
This commit is contained in:
unknown
2006-07-20 13:24:12 +04:00
parent ec4a7522ce
commit d8180d44b8
12 changed files with 98 additions and 149 deletions

View File

@ -7,36 +7,17 @@
###########################################################################
--source include/im_check_os.inc
--source include/im_check_env.inc
###########################################################################
#
# Check starting conditions. This test case assumes that:
# - two mysqld-instances are registered;
# - the first instance is online;
# - the second instance is offline;
# Check 'SHOW INSTANCE OPTIONS' command.
#
# Wait for mysqld1 (guarded instance) to start.
--exec $MYSQL_TEST_DIR/t/wait_for_process.sh $IM_MYSQLD1_PATH_PID 30 started
# Let IM detect that mysqld1 is online. This delay should be longer than
# monitoring interval.
--sleep 3
# Check that start conditions are as expected.
SHOW INSTANCES;
#
# Check 'SHOW INSTANCE OPTIONS' command:
# - check that options of both offline and online instances are accessible;
# - since configuration of an mysqld-instance contains directories, we should
# completely ignore the second column (values) in order to make the test
# case produce the same results on different installations;
# TODO: ignore values of only directory-specific options.
# Since configuration of an mysqld-instance contains directories, we should
# completely ignore the second column (values) in order to make the test
# case produce the same results on different installations;
# TODO: ignore values of only directory-specific options.
#
--replace_column 2 VALUE