mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 13:02:28 +01:00
33294b1b50
- BUG#15934: Instance manager fails to work; - BUG#18020: IM connect problem; - BUG#18027: IM: Server_ID differs; - BUG#18033: IM: Server_ID not reported; - BUG#21331: Instance Manager: Connect problems in tests; The only test suite has been changed (server codebase has not been modified). BitKeeper/deleted/.del-im_check_os.inc: Rename: mysql-test/include/im_check_os.inc -> BitKeeper/deleted/.del-im_check_os.inc mysql-test/include/im_check_env.inc: Include only this file from all IM-tests. mysql-test/lib/mtr_io.pl: Update mtr_get_pid_from_file() to workaround race, described in BUG#21884. mysql-test/lib/mtr_process.pl: Refactor im_start()/im_stop() so that they will be more reliable. There are the following user-visible changes: - if one of these functions fails, the test suite is aborted; - mtr_im_stop() now determines whether the component is alive or not not only by checking PID, but also by trying to connect to the component; - after starting IM, the test suite waits for it to start accepting client connections and to start all its guarded mysqld instances; - a lot of debug-logs have been added in order to simplify investigation of future failures. mysql-test/mysql-test-run.pl: 1. Get rid of kill_and_cleanup(); 2. Move im_start()/im_stop() to mtr_process.pl; 3. Change default IM port to 9311 so that it does not interfere with default slave port; 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: Updated IM-test. mysql-test/t/im_life_cycle.imtest: Updated IM-test. mysql-test/t/im_options_set.imtest: Updated IM-test. mysql-test/t/im_options_unset.imtest: Updated IM-test. mysql-test/t/im_utils.imtest: Updated IM-test.
105 lines
2.7 KiB
Text
105 lines
2.7 KiB
Text
###########################################################################
|
|
#
|
|
# This file contains test for (2) test suite.
|
|
#
|
|
# Consult WL#2789 for more information.
|
|
#
|
|
###########################################################################
|
|
|
|
--source include/im_check_env.inc
|
|
|
|
###########################################################################
|
|
|
|
#
|
|
# Check 'SHOW INSTANCE OPTIONS' command.
|
|
#
|
|
# 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
|
|
SHOW INSTANCE OPTIONS mysqld1;
|
|
|
|
--replace_column 2 VALUE
|
|
SHOW INSTANCE OPTIONS mysqld2;
|
|
|
|
#
|
|
# Before checking log files, we should start the second instance (mysqld2) to
|
|
# give it a chance to create log files.
|
|
#
|
|
|
|
START INSTANCE mysqld2;
|
|
--exec $MYSQL_TEST_DIR/t/wait_for_process.sh $IM_MYSQLD2_PATH_PID 30 started
|
|
|
|
STOP INSTANCE mysqld2;
|
|
--exec $MYSQL_TEST_DIR/t/wait_for_process.sh $IM_MYSQLD2_PATH_PID 30 stopped
|
|
|
|
#
|
|
# Check 'SHOW LOG FILES' command:
|
|
# - check that log files of both offline and online instances are accessible;
|
|
# - since placement of the log files is installation-specific, we should
|
|
# ignore it in comparisson;
|
|
# - also, we should ignore log file size, since it may depend on the version
|
|
# being tested;
|
|
#
|
|
|
|
--replace_column 2 PATH 3 FILE_SIZE
|
|
SHOW mysqld1 LOG FILES;
|
|
|
|
--replace_column 2 PATH 3 FILE_SIZE
|
|
SHOW mysqld2 LOG FILES;
|
|
|
|
#
|
|
# Check 'SHOW LOG' command:
|
|
# - check that all three kinds of logs are available for both offline and
|
|
# online instances;
|
|
# - we should ignore the value, because it is very specific and depends on
|
|
# many factors; we only check that Instance Manager is able to provide log
|
|
# files.
|
|
#
|
|
|
|
# mysqld1 (online) w/o the optional argument.
|
|
|
|
--replace_column 1 LOG_DATA
|
|
SHOW mysqld1 LOG ERROR 10;
|
|
|
|
--replace_column 1 LOG_DATA
|
|
SHOW mysqld1 LOG SLOW 10;
|
|
|
|
--replace_column 1 LOG_DATA
|
|
SHOW mysqld1 LOG GENERAL 10;
|
|
|
|
# mysqld1 (online) with the optional argument.
|
|
|
|
--replace_column 1 LOG_DATA
|
|
SHOW mysqld1 LOG ERROR 10, 2;
|
|
|
|
--replace_column 1 LOG_DATA
|
|
SHOW mysqld1 LOG SLOW 10, 2;
|
|
|
|
--replace_column 1 LOG_DATA
|
|
SHOW mysqld1 LOG GENERAL 10, 2;
|
|
|
|
# mysqld2 (offline) w/o the optional argument.
|
|
|
|
--replace_column 1 LOG_DATA
|
|
SHOW mysqld2 LOG ERROR 10;
|
|
|
|
--replace_column 1 LOG_DATA
|
|
SHOW mysqld2 LOG SLOW 10;
|
|
|
|
--replace_column 1 LOG_DATA
|
|
SHOW mysqld2 LOG GENERAL 10;
|
|
|
|
# mysqld2 (offline) with the optional argument.
|
|
|
|
--replace_column 1 LOG_DATA
|
|
SHOW mysqld2 LOG ERROR 10, 2;
|
|
|
|
--replace_column 1 LOG_DATA
|
|
SHOW mysqld2 LOG SLOW 10, 2;
|
|
|
|
--replace_column 1 LOG_DATA
|
|
SHOW mysqld2 LOG GENERAL 10, 2;
|