Add verbose printouts
mysql-test/lib/mtr_process.pl:
Add verbose printouts
mysql-test/mysql-test-run.pl:
Wait until first mysqld in slave cluster has created cluster/apply_status.ndb, put workaround in function workaround_hang_in_select
Add list of clusters and nodes
mysql-test/lib/mtr_process.pl:
Start servers in parallell
mysql-test/lib/mtr_report.pl:
Report about number of restarts
mysql-test/lib/mtr_stress.pl:
Update args to pass to mysqld_start
mysql-test/mysql-test-run.pl:
Start servers in parallell
Add lists for clusters and it's nodes to keep track of things
into mysql.com:/usr/local/mysql/merge-5.1
mysql-test/lib/mtr_process.pl:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/sp-error.result:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/r/trigger-grant.result:
Auto merged
mysql-test/r/trigger.result:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysql-test/t/trigger-grant.test:
Auto merged
mysql-test/t/trigger.test:
Auto merged
server-tools/instance-manager/options.h:
Auto merged
sql/field_conv.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_func.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/share/errmsg.txt:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
server-tools/instance-manager/options.cc:
Manual merge
sql/item_func.cc:
Manual merge
sql/mysql_priv.h:
Manual merge
sql/sp_head.cc:
Manual merge
sql/sql_table.cc:
Manual merge
tests fail on FreeBSD.
The patch contains of the following:
- make Instance Manager, running in the daemon mode, dump
the pid of angel-process in the special file;
- default value of angel-pid-file-name is 'mysqlmanager.angel.pid';
- if ordinary (IM) pid-file-name is specified in the configuration,
angel-pid-file-name is updated according to the following
rule: extension of the basename of pid-file-name is replaced by
'.angel.pid.
For example:
- pid-file-name: /tmp/im.pid
=> angel-pid-file-name: /tmp/im.angel.pid
- pid-file-name: /tmp/im.txt
=> angel-pid-file-name: /tmp/im.angel.pid
- pid-file-name: /tmp/5.0/im
=> angel-pid-file-name: /tmp/5.0/im.angel.pid
- add support for configuration option to customize angel
pid file name;
- fix test suite to use angel pid to kill Instance Manager
by all means if something went wrong.
Background
----------
The problem is that on some OSes (FreeBSD for one) Instance
Manager does not get SIGTERM, so can not shutdown gracefully.
Test suite wasn't able to cope with it, so this leads to the
mess in test results.
The problem should be split into two:
- fix signal handling;
- fix test suite.
This patch fixes test suite so that it will be able to kill
uncooperative Instance Manager. In order to achieve this,
test suite needs to know PID of IM Angel process.
mysql-test/lib/mtr_process.pl:
Added a function to send a signal to a process.
mysql-test/mysql-test-run.pl:
Changed procedure of stopping Instance Manager.
1. Try to stop IM normally (by sending SIGTERM);
2. If one of IM-related processes is still alive,
kill them all by SIGKILL and complain in the log.
server-tools/instance-manager/manager.cc:
Made create_pid_file() available for the whole project.
server-tools/instance-manager/manager.h:
Made create_pid_file() available for the whole project.
server-tools/instance-manager/mysqlmanager.cc:
Dump PID of angel process into file.
server-tools/instance-manager/options.cc:
Added an option to allow to customize angel pid file name.
server-tools/instance-manager/options.h:
Added an option to allow to customize angel pid file name.
config/ac-macros/yassl.m4:
Fix like of yassl makefiles after merge
mysql-test/lib/mtr_process.pl:
Re-add line accidently cut out during merge
mysql-test/mysql-test-run.pl:
Don't start up ndbcluster slave if we don't need it, and fix how
NDB_STATUS_OK is defined
mysql-test/r/rpl_openssl.result:
Update results
sql/mysqld.cc:
Remove duplicate of have_dlopen (bad merge)
sql/set_var.cc:
Remove duplicate of prepared_stmt_count (bad merge)
into mysql.com:/home/jimw/my/mysql-5.1-clean
BitKeeper/etc/ignore:
auto-union
BitKeeper/deleted/.del-mysql_upgrade.dsp:
Delete: VC++Files/client/mysql_upgrade.dsp
BitKeeper/deleted/.del-mysql_upgrade_ia64.dsp:
Delete: VC++Files/client/mysql_upgrade_ia64.dsp
BitKeeper/deleted/.del-mysql_upgrade.c:
Delete: client/mysql_upgrade.c
VC++Files/mysql.dsw:
Auto merged
VC++Files/mysql.sln:
Auto merged
VC++Files/mysql_ia64.dsw:
Auto merged
client/mysql.cc:
Auto merged
config/ac-macros/zlib.m4:
Auto merged
configure.in:
Auto merged
extra/yassl/Makefile.am:
Auto merged
extra/yassl/taocrypt/Makefile.am:
Auto merged
include/my_global.h:
Auto merged
include/mysql.h:
Auto merged
libmysql/libmysql.def:
Auto merged
libmysqld/libmysqld.def:
Auto merged
mysql-test/r/grant2.result:
Auto merged
mysql-test/r/sp-security.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/trigger.result:
Auto merged
mysql-test/r/udf.result:
Auto merged
mysql-test/t/grant2.test:
Auto merged
mysql-test/t/rpl_openssl.test:
Auto merged
mysql-test/t/rpl_rotate_logs.test:
Auto merged
mysql-test/t/sp-security.test:
Auto merged
mysql-test/t/trigger.test:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_subselect.cc:
Auto merged
sql-common/client.c:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
client/Makefile.am:
Resolve conflict
config/ac-macros/yassl.m4:
Resolve conflict
mysql-test/include/have_udf.inc:
Resolve conflict
mysql-test/lib/mtr_process.pl:
Resolve conflict
mysql-test/mysql-test-run.pl:
Resolve conflict
mysql-test/r/have_udf.require:
Resolve conflict
mysql-test/r/rpl_openssl.result:
Resolve conflict
mysql-test/t/disabled.def:
Resolve conflict
mysql-test/t/information_schema.test:
Resolve conflict
server-tools/instance-manager/instance_options.cc:
Resolve conflict
sql/mysql_priv.h:
Resolve conflict
sql/set_var.cc:
Resolve conflict
support-files/mysql.spec.sh:
Resolve conflict
- Log boostratp/install to var/log/boostrap.log
- Log output from mysqladmin to var/log/mysqladmin.log
- Remove old manager references
mysql-test/lib/mtr_process.pl:
Log output from mysqladmin to var/log/mysqladmin.log
mysql-test/mysql-test-run.pl:
Log output from boostrap/install of db's to var/log/bootstrap.log
Remove references to old manager
- Part 1, better handling of subprocess and stdout to be done
mysql-test/lib/mtr_process.pl:
- Dont redirect stdout if ActiveState perl since fork creates a new thread and not another process.
- Change waitpid to allow for negative pid as we get on Windows, strange but
that is how it is. It should never create a process with pid -1 though.
- Remove an "if" for cygwin that does not do anything.
- Add "print" in the potentially hanging while loop in "start_reap_all"
- Dont use "getpgrp" on windows.
- Remove "sleep 2" in mtr_exit
- Remove the initial ping of mysqld's in 'mysql_admin_shutdown', instead just start one
mysqladmin for each expected mysqld server and wait for them to return.
Then perform the ping of the mysqld server's. Those ping's normally return immediately.
mysql-test/lib/mtr_process.pl:
Change from "mtr_error()" to "mtr_warning()" on some problems,
because "error" makes the whole suite abort which then makes "Do-compile" terminate,
so none of the following steps (including other etst suites) will be done.
errorneously abort reporting failure to kill child processes, where in
reality the problem was merely that the child had become a zombie because
of missing waitpid() call.
mysql-test/lib/mtr_process.pl:
Fix race (on some platforms) when killing processes.
Added --skip-im option handling
Don't terminate script if IM fails to create PID file
mtr_cases.pl:
Added --skip-im option handling
mtr_process.pl:
Kill left over 'mysqld' processes started by IM
mysql-test/lib/mtr_process.pl:
Kill left over 'mysqld' processes started by IM
mysql-test/lib/mtr_cases.pl:
Added --skip-im option handling
mysql-test/mysql-test-run.pl:
Added --skip-im option handling
Don't terminate script if IM fails to create PID file
1) Add support to testing Instance Manager in daemon mode;
2) Don't run Instance Manager tests when running with --ps-protocol option;
mysql-test/lib/mtr_cases.pl:
WL#2789 "Instance Manager: test using mysql-test-run testing framework"
Skip/disable Instance Manager tests in the following cases:
- we are testing embedded server;
- we are running with --ps-protocol;
- Instance Manager executable does not exist;
Report about the reason in the standard way.
mysql-test/lib/mtr_process.pl:
WL#2789 "Instance Manager: test using mysql-test-run testing framework"
Make several attempts (i.e. send several signals to process) while trying to kill it.
mysql-test/mysql-test-run.pl:
WL#2789 "Instance Manager: test using mysql-test-run testing framework"
Add support for testing Instance Manager in daemon mode.
client/mysqltest.c:
Auto merged
mysql-test/lib/mtr_process.pl:
Auto merged
os2/MySQL-Source.icc:
Auto merged
regex/Makefile.am:
Auto merged
regex/engine.c:
Auto merged
regex/main.c:
Auto merged
regex/regerror.c:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/mysqld.cc:
Auto merged
mysql-test/lib/mtr_process.pl:
Handle errors in child processes separate from the parent process (patch supplied by Kent).
mysql-test/lib/mtr_report.pl:
New function to handle errors in child processes separate from the parent process (patch supplied by Kent).
Expected to avoid HUP signals.
Make sure mtr_kill_processes() is called with an array ref
Corrected error string for STDERR redirect
mysql-test/lib/mtr_process.pl:
Make sure mtr_kill_processes() is called with an array ref
Backporting from 5.0
mysql-test/mysql-test-run.pl:
Backporting from 5.0
mysql-test/lib/mtr_process.pl:
Backporting from 5.0
mysql-test/lib/mtr_report.pl:
Backporting from 5.0
mysql-test/lib/mtr_timer.pl:
Backporting from 5.0
mysql-test/Makefile.am:
Make installation procedure aware of the Instance Manager tests.
mysql-test/lib/mtr_cases.pl:
Make collect_one_test_case() aware of the Instance Manager tests.
mysql-test/lib/mtr_process.pl:
Minor changes:
- open log files for append, not for overwrite. Append mode is very
useful for debugging of several tests;
- extract the code for killing processes into a separate function:
mtr_kill_processes(). The function is used to stop IM-related processes.
mysql-test/mysql-test-run.pl:
Added support for the Instance Manager tests.
Call mtr_timer_stop_all() at exit
mtr_report.pl, mysql-test-run.pl:
Added default/ps-protocol/embedded to abort and summary line
mtr_timer.pl:
Added function mtr_timer_stop_all()
mysql-test/mysql-test-run.pl:
Added default/ps-protocol/embedded to abort and summary line
mysql-test/lib/mtr_timer.pl:
Added function mtr_timer_stop_all()
mysql-test/lib/mtr_report.pl:
Added default/ps-protocol/embedded to abort and summary line
mysql-test/lib/mtr_process.pl:
Call mtr_timer_stop_all() at exit
Added suite and test case timeout
mtr_timer.pl:
new file
mysql-test/lib/mtr_process.pl:
Added suite and test case timeout
mysql-test/lib/mtr_report.pl:
Added suite and test case timeout
mysql-test/mysql-test-run.pl:
Added suite and test case timeout
mysql-test/lib/mtr_timer.pl:
Added suite and test case timeout
Longer shutdown timeout, slave may be in reconnect
HUP seem to disturb exit(), added sleep to make sure
output is flushed
mysql-test/lib/mtr_process.pl:
Longer shutdown timeout, slave may be in reconnect
HUP seem to disturb exit(), added sleep to make sure
output is flushed
Bug#11792: Check all of status code, to catch a crash as a failure
mtr_cases.pl:
Code cleanup for skipped/disabled handling
mtr_process.pl:
In debug mode, report if mysqladmin did not at least
make the server stop listening to the port.
Increased the time waiting for terminating to 20 seconds,
to wait for really slow slave shutdown.
Added call to start_reap_all(), to avoid zombies.
mtr_report.pl:
Removed prototype for unused function mtr_report_test_disabled()
mysql-test/lib/mtr_report.pl:
Removed prototype for unused function mtr_report_test_disabled()
mysql-test/lib/mtr_cases.pl:
Code cleanup for skipped/disabled handling
mysql-test/lib/mtr_process.pl:
Bug#11792: Check all of status code, to catch a crash as a failure
Bug#12094: Let sleep_until_file_created() return the pid as intended
mysql-test/lib/mtr_process.pl:
Bug#12094: Let sleep_until_file_created() return the pid as intended
Added a sleep for 5 seconds when shuting down,
work around for strange problem with server restarts
mtr_cases.pl:
Set default time zone as opt to mysqld
mysql-test-run.pl:
Enabled --mysqld=<flags> to work
Put some Windows path names into environment,
to be used in --replace_result
mysql-test-run.sh:
Make shell script tolerant to Windows change in test cases
mysql-test/mysql-test-run.sh:
Make shell script tolerant to Windows change in test cases
mysql-test/mysql-test-run.pl:
Enabled --mysqld=<flags> to work
Put some Windows path names into environment,
to be used in --replace_result
mysql-test/lib/mtr_cases.pl:
Set default time zone as opt to mysqld
mysql-test/lib/mtr_process.pl:
Added a sleep for 5 seconds when shuting down,
work around for strange problem with server restarts
Try kill all children to the mysql-test-run process when exiting
mtr_process.pl:
Added new function mtr_exit() that try kill all children to the mysql-test-run process when exiting
mysql-test-run.pl:
Try kill all children to the mysql-test-run process when exiting
New --vardir caused problems on Windows
Changed faulty calls to error() to mtr_error()
mysql-test/mysql-test-run.pl:
Try kill all children to the mysql-test-run process when exiting
New --vardir caused problems on Windows
Changed faulty calls to error() to mtr_error()
mysql-test/lib/mtr_report.pl:
Try kill all children to the mysql-test-run process when exiting
mysql-test/lib/mtr_process.pl:
Added new function mtr_exit() that try kill all children to the mysql-test-run process when exiting
mysql-test/lib/mtr_misc.pl:
Try kill all children to the mysql-test-run process when exiting
'ps_1general' and 'fulltext_cache' test cases.
mysql-test/r/fulltext_cache.result:
To pass on Windows, round to less digits
mysql-test/t/fulltext_cache.test:
To pass on Windows, round to less digits
mysql-test/t/ps_1general.test:
To pass on Windows, change \\ to / in result
mysql-test/t/rpl_delete_all.test:
To pass on Windows, change \\ to / in result
mysql-test/mysql-test-run.pl:
Pass mysqld --console to catch output on Windows
mysql-test/lib/mtr_process.pl:
Check error from exec() to avoid becoming a fork() bomb
Let --start-and-exit actually start a server
Added that test case names can be specified on the comman line
Added embedded server support
Added environment variables UMASK, UMASK_DIR
Added missing MASTER_MYSOCK1, MASTER_MYPORT1, USE_RUNNING_SERVER
Added missing CHARSETSDIR, MYSQL_FIX_SYSTEM_TABLES, MYSQL_CLIENT_TEST
Pass on return value from sleep_until_file_created(), to fail test
Fail test if early termination of mysqld servers
Create intial databases for the second master, and two additional slaves
mtr_process.pl:
Find out if port is still in use, using simple TCP connect
Use non blocking waitpid() to catch terminations early
Make a special case spawning the 'mysqltest' application
Redo the fork() if it returns EAGAIN
Make sure to record if master or slave terminated
Improved debugging output
Improved code that remove PID files to avoid race
Abort if we can't stop all mysqld servers using our ports
Many improvements in killing mysqld servers
Let sleep_until_file_created() catch if server died early
mtr_report.pl:
Added option to disable test cases using <testcase>.disabled file
If --timer, only try to open file with time data if it exists
mtr_io.pl:
Remove starting/ending space reading server options from file
mysql-test/lib/mtr_io.pl:
Remove starting/ending space reading server options from file
mysql-test/lib/mtr_report.pl:
Added option to disable test cases using <testcase>.disabled file
If --timer, only try to open file with time data if it exists
mysql-test/lib/mtr_process.pl:
Find out if port is still in use, using simple TCP connect
Use non blocking waitpid() to catch terminations early
Make a special case spawning the 'mysqltest' application
Redo the fork() if it returns EAGAIN
Make sure to record if master or slave terminated
Improved debugging output
Improved code that remove PID files to avoid race
Abort if we can't stop all mysqld servers using our ports
Many improvements in killing mysqld servers
Let sleep_until_file_created() catch if server died early
mysql-test/mysql-test-run.pl:
Let --start-and-exit actually start a server
Added that test case names can be specified on the comman line
Added embedded server support
Added environment variables UMASK, UMASK_DIR
Added missing MASTER_MYSOCK1, MASTER_MYPORT1, USE_RUNNING_SERVER
Added missing CHARSETSDIR, MYSQL_FIX_SYSTEM_TABLES, MYSQL_CLIENT_TEST
Pass on return value from sleep_until_file_created(), to fail test
Fail test if early termination of mysqld servers
Create intial databases for the second master, and two additional slaves
Catch more fork() errors.
Moved sleep_until_file_created() here from "mysql-test-run.pl".
Improved debug output.
mtr_io.pl:
Improved mtr_get_opts_from_file(), try to mimic some sh.
mysql-test-run.pl:
Cleaned up the timeout handling.
Created new function environment_setup().
Corrected time zone handling.
Moved sleep_until_file_created() to "lib/mtr_process.pl".
Improved debug output.
mysql-test/mysql-test-run.pl:
Cleaned up the timeout handling.
Created new function environment_setup().
Corrected time zone handling.
Moved sleep_until_file_created() to "lib/mtr_process.pl".
Improved debug output.
mysql-test/lib/mtr_io.pl:
Improved mtr_get_opts_from_file(), try to mimic some sh.
mysql-test/lib/mtr_process.pl:
Catch more fork() errors.
Moved sleep_until_file_created() here from "mysql-test-run.pl".
Improved debug output.
Added missing stop_reap_all() if returns early from function
mysql-test-run.pl:
Improved output from --script-debug
Initial Cygwin support
Improved mysqld process termination
mysql-test/mysql-test-run.pl:
Improved output from --script-debug
Initial Cygwin support
Improved mysqld process termination
mysql-test/lib/mtr_process.pl:
Added missing stop_reap_all() if returns early from function
Perl version of mysql-test-run
new file
mysql-test/lib/init_db.sql:
Perl version of mysql-test-run
mysql-test/lib/mtr_gcov.pl:
Perl version of mysql-test-run
mysql-test/lib/mtr_gprof.pl:
Perl version of mysql-test-run
mysql-test/lib/mtr_io.pl:
Perl version of mysql-test-run
mysql-test/lib/mtr_match.pl:
Perl version of mysql-test-run
mysql-test/lib/mtr_misc.pl:
Perl version of mysql-test-run
mysql-test/lib/mtr_process.pl:
Perl version of mysql-test-run
mysql-test/lib/mtr_report.pl:
Perl version of mysql-test-run
mysql-test/mysql-test-run.pl:
Perl version of mysql-test-run