Commit graph

5 commits

Author SHA1 Message Date
unknown
cf9038e979 Fix for BUG##24415: Instance manager test im_daemon_life_cycle
fails randomly.

The problem was that the test case used command line tool (mysql)
without specifying connect_timeout argument. In some cases,
this lead to hanging of the test case.

The fix is to specify --connect_timeout=1 when starting mysql.

Also, the patch contains polishing and various cleanups to simplify
analyzing of the problems further.

The patch affects only test suite, no server codebase has been
touched.


mysql-test/lib/mtr_im.pl:
  Remember PID of the IM-spawner -- a process, that is
  used to fork IM-angel.
mysql-test/lib/mtr_io.pl:
  Trim \n from the PID.
mysql-test/lib/mtr_process.pl:
  Don't complain if it was IM-spawner, who died.
mysql-test/r/im_daemon_life_cycle.result:
  Update the result file.
mysql-test/r/im_life_cycle.result:
  Update the result file.
mysql-test/t/im_daemon_life_cycle.imtest:
  Polishing: add more comments, be more verbose.
mysql-test/t/im_life_cycle.imtest:
  Polishing: be more verbose.
mysql-test/t/im_utils.imtest:
  Polishing: be more verbose.
mysql-test/t/kill_n_check.sh:
  Log messages to the extrenal file so that they can be analyzed
  if test case failed.
mysql-test/t/wait_for_process.sh:
  Log messages to the extrenal file so that they can be analyzed
  if test case failed.
mysql-test/t/wait_for_socket.sh:
  Log messages to the extrenal file so that they can be analyzed
  if test case failed.
mysql-test/t/log.sh:
  Dummy script to facilitate logging from test-scripts.
mysql-test/t/utils.sh:
  A bunch of auxilary functions to facilitate logging.
2006-11-23 22:55:36 +03:00
unknown
33294b1b50 Preliminary patch for the following bugs:
- 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.
2006-08-29 15:46:40 +04:00
unknown
d8180d44b8 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.
2006-07-20 13:24:12 +04:00
unknown
0ff8d48661 Fix of test suite in scope of fixing BUG#18023: IM: instance
can be started several times; monitor interval must be > 2sec


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_utils.result:
  Updated result file.
mysql-test/t/im_daemon_life_cycle-im.opt:
  Set monitoring interval to 1 second in order to:
    - be consistent with 5.1;
    - speed up tests;
mysql-test/t/im_daemon_life_cycle.imtest:
  1. Use wait_for_start.sh script to minimize chance of race condition.
  2. Polishing.
mysql-test/t/im_life_cycle.imtest:
  1. Use wait_for_start.sh and wait_for_stop.sh scripts to
     minimize chance of race condition;
  2. Remove some statements, because there is no way now to
     stabilize their output.
  3. Polishing;
mysql-test/t/im_utils.imtest:
  1. Use wait_for_start.sh script to minimize chance of race condition.
  2. Polishing.
mysql-test/t/kill_n_check.sh:
  1. Make timeout configurable by command-line argument;
  2. Change algorithm of waiting for process to restart to be
     more robust.
mysql-test/t/im_life_cycle-im.opt:
  Set monitoring interval to 1 second in order to:
    - be consistent with 5.1;
    - speed up tests;
mysql-test/t/im_utils-im.opt:
  Set monitoring interval to 1 second in order to:
    - be consistent with 5.1;
    - speed up tests;
mysql-test/t/wait_for_process.sh:
  A new helper script, intended to be used instead of dummy "sleep"
  when waiting for some process to start or stop.
2006-06-19 14:13:34 +04:00
unknown
43c8f453e5 WL#2789 "Instance Manager: test using mysql-test-run testing framework"
Add Instance Manager tests.


mysql-test/include/im_check_os.inc:
  Currently Instance Manager tests are known to work only on UNIX platform.
  This header file is included in each IM-test in order to skip the test
  on Windows.
mysql-test/r/im_daemon_life_cycle.result:
  Results file for Instance Manager daemon test.
mysql-test/r/im_life_cycle.result:
  Results file for Instance Manager life cycle test.
mysql-test/r/im_options_set.result:
  Results file for Instance Manager SET statement test.
mysql-test/r/im_options_unset.result:
  Results file for Instance Manager UNSET statement test.
mysql-test/r/im_utils.result:
  Results file for Instance Manager utils test.
mysql-test/t/im_daemon_life_cycle-im.opt:
  Options file for Instance Manager daemon test.
mysql-test/t/im_daemon_life_cycle.imtest:
  Instance Manager daemon test (mysqltestrun-part).
mysql-test/t/im_life_cycle.imtest:
  Instance Manager life cycle test.
mysql-test/t/im_options_set.imtest:
  Instance Manager SET statement test.
mysql-test/t/im_options_unset.imtest:
  Instance Manager UNSET statement test.
mysql-test/t/im_utils.imtest:
  Instance Manager utils test.
mysql-test/t/kill_n_check.sh:
  The helper script. Its main idea is to kill some process and
  check that the process will (or will not) be restarted.
2005-10-01 01:14:50 +04:00