You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

5230 lines
145 KiB

Make it possible to run mysql-test-run.pl with default test suite in different vardir. mysql-test/include/have_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/include/test_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/mysql-test-run.pl: Create variable $MYSQLTEST_VARDIR that points to the vardir Don't create a symlink from var/ to the physical vardir if it's somewhere else Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp" mysql-test/mysql-test-run.sh: Export MYSQLTEST_VARDIR, always pointing at mysql-test/var mysql-test/r/backup.result: Use MYSQLTEST_VARDIR mysql-test/r/blackhole.result: Use "../std_data_ln" to find std_data files mysql-test/r/loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqlbinlog.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqltest.result: Use MYSQLTEST_VARDIR mysql-test/r/outfile.result: Use MYSQLTEST_VARDIR mysql-test/r/query_cache.result: Add missing drop function mysql-test/r/rpl000001.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl000004.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_innodb.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_m.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_s.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddatalocal.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_log.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_misc_functions.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_replicate_do.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_rewrite_db.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_timezone.result: Use "../std_data_ln" to find std_data files mysql-test/r/symlink.result: Use MYSQLTEST_VARDIR mysql-test/r/trigger.result: Use "../std_data_ln" to find std_data files mysql-test/r/view.result: Use "../std_data_ln" to find std_data files mysql-test/r/warnings.result: Use "../std_data_ln" to find std_data files mysql-test/t/backup-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/backup.test: Use MYSQLTEST_VARDIR mysql-test/t/blackhole.test: Use "../std_data_ln" to find std_data files mysql-test/t/ctype_ucs_binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/im_daemon_life_cycle-im.opt: Use MYSQLTEST_VARDIR mysql-test/t/im_options_set.imtest: Use MYSQLTEST_VARDIR mysql-test/t/im_options_unset.imtest: Use MYSQLTEST_VARDIR mysql-test/t/loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/myisam.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqlbinlog.test: Use "../std_data_ln" to find std_data files mysql-test/t/mysqlbinlog2.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqldump.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqltest.test: Use MYSQLTEST_VARDIR mysql-test/t/ndb_autodiscover.test: Use MYSQLTEST_VARDIR mysql-test/t/outfile.test: Use MYSQLTEST_VARDIR mysql-test/t/query_cache.test: Add missing drop function mysql-test/t/repair.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000001.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000004.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000009.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000015-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl000017-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_EE_error.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_charset.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_drop_db.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_innodb.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_m.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_s.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddatalocal.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_log.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_misc_functions-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_misc_functions.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_replicate_do.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rewrite_db.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rotate_logs-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_rotate_logs.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_timezone.test: Use MYSQLTEST_VARDIR mysql-test/t/show_check.test: Use MYSQLTEST_VARDIR mysql-test/t/sp-destruct.test: Use MYSQLTEST_VARDIR mysql-test/t/symlink.test: Use MYSQLTEST_VARDIR mysql-test/t/temp_table-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/trigger-compat.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger-grant.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger.test: Use "../std_data_ln" to find std_data files mysql-test/t/type_varchar.test: Use MYSQLTEST_VARDIR mysql-test/t/user_var-binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/view.test: Use "../std_data_ln" to find std_data files mysql-test/t/warnings.test: Use "../std_data_ln" to find std_data files mysql-test/include/sourced.inc: New BitKeeper file ``mysql-test/include/sourced.inc'' mysql-test/include/sourced1.inc: New BitKeeper file ``mysql-test/include/sourced1.inc''
20 years ago
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 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
21 years ago
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 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
21 years ago
Bug#25714 "getGeneratedKeys() does not work with FEDERATED table" mysql_insert() expected the storage engine to update the row data during the write_row() operation with the value of the new auto- increment field. The field must be updated when only one row has been inserted as mysql_insert() would ignore the thd->last_insert. This patch implements HA_STATUS_AUTO support in ha_federated::info() and ensures that ha_federated::write_row() does update the row's auto-increment value. The test case was written in C as the protocol's 'id' value is accessible through libmysqlclient and not via SQL statements. mysql-test-run.pl was extended to enable running the test binary. mysql-test/mysql-test-run.pl: bug25714 implement support to run C test for bug25714 sql/ha_federated.cc: bug25714 The storage engine instance property auto_increment_value was not being set. mysql_insert() requires that the storage engine updates the row with the auto-increment value, especially when only inserting one row. Implement support for ha_federated::info(HA_STATUS_AUTO) tests/Makefile.am: bug25714 build C test for bug mysql-test/include/have_bug25714.inc: New BitKeeper file ``mysql-test/include/have_bug25714.inc'' mysql-test/r/federated_bug_25714.result: New BitKeeper file ``mysql-test/r/federated_bug_25714.result'' mysql-test/r/have_bug25714.require: New BitKeeper file ``mysql-test/r/have_bug25714.require'' mysql-test/t/federated_bug_25714.test: New BitKeeper file ``mysql-test/t/federated_bug_25714.test'' tests/bug25714.c: New BitKeeper file ``tests/bug25714.c''
19 years ago
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 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
21 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
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 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
21 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Bug#20166 mysql-test-run.pl does not test system privilege tables creation - Use mysql_system_tables.sql to create MySQL system tables in all places where we create them(mysql_install_db, mysql-test-run-pl and mysql_fix_privilege_tables.sql) BitKeeper/deleted/.del-init_db.sql: Rename: mysql-test/init_db.sql -> BitKeeper/deleted/.del-init_db.sql BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8: Rename: mysql-test/lib/init_db.sql -> BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8 BitKeeper/deleted/.del-mysql_create_system_tables.sh: Rename: scripts/mysql_create_system_tables.sh -> BitKeeper/deleted/.del-mysql_create_system_tables.sh BitKeeper/etc/ignore: Added scripts/mysql_fix_privilege_tables.sql to the ignore list mysql-test/Makefile.am: lib/init_db.sql has been removed mysql-test/mysql-test-run.pl: - Build var/tmp/bootstrap.sql from mysql_system_tables.sql, mysql_test_data_timezone.sql and fill_help_tables.sql and use it when bootsraping the system tables to use during test. mysql-test/r/create.result: Update result file mysql-test/r/derived.result: Update result file mysql-test/r/join.result: Update result file mysql-test/r/mysql_upgrade.result: Update result file mysql-test/r/sp-security.result: Update result file mysql-test/t/create.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/derived.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/grant2.test: Add anonymous users for part of thes that need it. mysql-test/t/grant_cache.test: Add anonymous users for part of thes that need it. mysql-test/t/init_connect.test: Add anonymous users for part of thes that need it. mysql-test/t/lock_multi.test: Add anonymous users for part of thes that need it. mysql-test/t/ndb_basic.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_index_ordered.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_multi.test: Connect as "root", blank user will take currently logged in username mysql-test/t/overflow.test: Connect as root - no anonymous users by default anymore mysql-test/t/rpl_temporary.test: Add anonymous users for the test mysql-test/t/xa.test: Connect as "root", blank user wil pick currently logged in user scripts/Makefile.am: Remove mysql_create_system_tables.sh Add mysql_system_tables.sql and mysql_test_data_timezone.sql Build mysql_fix_privilege_tables.sql from mysql_system_tables.sql and mysql_fix_privilege_tables.sql.in scripts/mysql_fix_privilege_tables.sh: Update message describing what the script does scripts/mysql_fix_privilege_tables.sql.in: Remove the part that creates system tables as that will be added to mysql_fix_privileg_tables.sql from mysql_system_tables.sql Change all comments to use # scripts/mysql_install_db.sh: Use mysql_system_tables.sql to create the MySQL system tables Update comments and indentation Add more descriptive comments about --windows switch Reduce number of hardcoded names for the SQL files the script looks for mysql-test/include/add_anonymous_users.inc: New BitKeeper file ``mysql-test/include/add_anonymous_users.inc'' mysql-test/include/delete_anonymous_users.inc: New BitKeeper file ``mysql-test/include/delete_anonymous_users.inc'' scripts/mysql_system_tables.sql: New BitKeeper file ``scripts/mysql_system_tables.sql'' scripts/mysql_test_data_timezone.sql: New BitKeeper file ``scripts/mysql_test_data_timezone.sql''
19 years ago
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 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
21 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Always test ssl and compress - Updated after review client/mysqltest.c: Updated after review. Fix "connect" command to take SSL and/or COMPRESS as options instead of enable/disable_ssl and enable/disable_compress Commented do_connect, added test cases etc. Fix safe_get_param to make it possible to call it once for every argument without having any checks inbetween. Make a copy for query->first_argument since safe_get_param will modify query string. Now connect works inside a while loop as well. mysql-test/mysql-test-run.pl: Updated after review mysql-test/r/connect.result: Enable test that was previolsy disabled because of "no error handling" in connect mysql-test/r/mysqltest.result: Added tests for "connect" mysql-test/t/compress.test: Updated after review, use the option argument to connect mysql-test/t/connect.test: Enable test that was previolsy disabled because of "no error handling" in connect Now it's possible to use "--error" before connect, so let's use it. mysql-test/t/information_schema.test: Connection user4 was already used mysql-test/t/myisam.test: Disconnect con1 so the name can be reused mysql-test/t/mysqltest.test: Added tests for "connect" mysql-test/t/openssl_1.test: Updated after review, use the option argument to connect mysql-test/t/sp-security.test: Disconnect user1 connection so the name can be reused mysql-test/t/ssl.test: Updated after review, use the option argument to connect mysql-test/t/ssl_compress.test: Updated after review, use the option argument to connect sql/mysqld.cc: Updated after review, Compression variable is always available sql/sql_show.cc: Updated after review, Compression variable is always available sql/structs.h: Updated after review, Compression variable is always available
20 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
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 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
21 years ago
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 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
21 years ago
Partial fix for BUG#14106: IM: im_life_cycle and im_utils 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.
20 years ago
Bug#20166 mysql-test-run.pl does not test system privilege tables creation - Use mysql_system_tables.sql to create MySQL system tables in all places where we create them(mysql_install_db, mysql-test-run-pl and mysql_fix_privilege_tables.sql) BitKeeper/deleted/.del-init_db.sql: Rename: mysql-test/init_db.sql -> BitKeeper/deleted/.del-init_db.sql BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8: Rename: mysql-test/lib/init_db.sql -> BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8 BitKeeper/deleted/.del-mysql_create_system_tables.sh: Rename: scripts/mysql_create_system_tables.sh -> BitKeeper/deleted/.del-mysql_create_system_tables.sh BitKeeper/etc/ignore: Added scripts/mysql_fix_privilege_tables.sql to the ignore list mysql-test/Makefile.am: lib/init_db.sql has been removed mysql-test/mysql-test-run.pl: - Build var/tmp/bootstrap.sql from mysql_system_tables.sql, mysql_test_data_timezone.sql and fill_help_tables.sql and use it when bootsraping the system tables to use during test. mysql-test/r/create.result: Update result file mysql-test/r/derived.result: Update result file mysql-test/r/join.result: Update result file mysql-test/r/mysql_upgrade.result: Update result file mysql-test/r/sp-security.result: Update result file mysql-test/t/create.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/derived.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/grant2.test: Add anonymous users for part of thes that need it. mysql-test/t/grant_cache.test: Add anonymous users for part of thes that need it. mysql-test/t/init_connect.test: Add anonymous users for part of thes that need it. mysql-test/t/lock_multi.test: Add anonymous users for part of thes that need it. mysql-test/t/ndb_basic.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_index_ordered.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_multi.test: Connect as "root", blank user will take currently logged in username mysql-test/t/overflow.test: Connect as root - no anonymous users by default anymore mysql-test/t/rpl_temporary.test: Add anonymous users for the test mysql-test/t/xa.test: Connect as "root", blank user wil pick currently logged in user scripts/Makefile.am: Remove mysql_create_system_tables.sh Add mysql_system_tables.sql and mysql_test_data_timezone.sql Build mysql_fix_privilege_tables.sql from mysql_system_tables.sql and mysql_fix_privilege_tables.sql.in scripts/mysql_fix_privilege_tables.sh: Update message describing what the script does scripts/mysql_fix_privilege_tables.sql.in: Remove the part that creates system tables as that will be added to mysql_fix_privileg_tables.sql from mysql_system_tables.sql Change all comments to use # scripts/mysql_install_db.sh: Use mysql_system_tables.sql to create the MySQL system tables Update comments and indentation Add more descriptive comments about --windows switch Reduce number of hardcoded names for the SQL files the script looks for mysql-test/include/add_anonymous_users.inc: New BitKeeper file ``mysql-test/include/add_anonymous_users.inc'' mysql-test/include/delete_anonymous_users.inc: New BitKeeper file ``mysql-test/include/delete_anonymous_users.inc'' scripts/mysql_system_tables.sql: New BitKeeper file ``scripts/mysql_system_tables.sql'' scripts/mysql_test_data_timezone.sql: New BitKeeper file ``scripts/mysql_test_data_timezone.sql''
19 years ago
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 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
21 years ago
Bug#25714 "getGeneratedKeys() does not work with FEDERATED table" mysql_insert() expected the storage engine to update the row data during the write_row() operation with the value of the new auto- increment field. The field must be updated when only one row has been inserted as mysql_insert() would ignore the thd->last_insert. This patch implements HA_STATUS_AUTO support in ha_federated::info() and ensures that ha_federated::write_row() does update the row's auto-increment value. The test case was written in C as the protocol's 'id' value is accessible through libmysqlclient and not via SQL statements. mysql-test-run.pl was extended to enable running the test binary. mysql-test/mysql-test-run.pl: bug25714 implement support to run C test for bug25714 sql/ha_federated.cc: bug25714 The storage engine instance property auto_increment_value was not being set. mysql_insert() requires that the storage engine updates the row with the auto-increment value, especially when only inserting one row. Implement support for ha_federated::info(HA_STATUS_AUTO) tests/Makefile.am: bug25714 build C test for bug mysql-test/include/have_bug25714.inc: New BitKeeper file ``mysql-test/include/have_bug25714.inc'' mysql-test/r/federated_bug_25714.result: New BitKeeper file ``mysql-test/r/federated_bug_25714.result'' mysql-test/r/have_bug25714.require: New BitKeeper file ``mysql-test/r/have_bug25714.require'' mysql-test/t/federated_bug_25714.test: New BitKeeper file ``mysql-test/t/federated_bug_25714.test'' tests/bug25714.c: New BitKeeper file ``tests/bug25714.c''
19 years ago
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 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
21 years ago
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 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
21 years ago
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 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
21 years ago
Make it possible to run mysql-test-run.pl with default test suite in different vardir. mysql-test/include/have_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/include/test_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/mysql-test-run.pl: Create variable $MYSQLTEST_VARDIR that points to the vardir Don't create a symlink from var/ to the physical vardir if it's somewhere else Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp" mysql-test/mysql-test-run.sh: Export MYSQLTEST_VARDIR, always pointing at mysql-test/var mysql-test/r/backup.result: Use MYSQLTEST_VARDIR mysql-test/r/blackhole.result: Use "../std_data_ln" to find std_data files mysql-test/r/loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqlbinlog.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqltest.result: Use MYSQLTEST_VARDIR mysql-test/r/outfile.result: Use MYSQLTEST_VARDIR mysql-test/r/query_cache.result: Add missing drop function mysql-test/r/rpl000001.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl000004.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_innodb.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_m.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_s.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddatalocal.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_log.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_misc_functions.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_replicate_do.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_rewrite_db.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_timezone.result: Use "../std_data_ln" to find std_data files mysql-test/r/symlink.result: Use MYSQLTEST_VARDIR mysql-test/r/trigger.result: Use "../std_data_ln" to find std_data files mysql-test/r/view.result: Use "../std_data_ln" to find std_data files mysql-test/r/warnings.result: Use "../std_data_ln" to find std_data files mysql-test/t/backup-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/backup.test: Use MYSQLTEST_VARDIR mysql-test/t/blackhole.test: Use "../std_data_ln" to find std_data files mysql-test/t/ctype_ucs_binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/im_daemon_life_cycle-im.opt: Use MYSQLTEST_VARDIR mysql-test/t/im_options_set.imtest: Use MYSQLTEST_VARDIR mysql-test/t/im_options_unset.imtest: Use MYSQLTEST_VARDIR mysql-test/t/loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/myisam.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqlbinlog.test: Use "../std_data_ln" to find std_data files mysql-test/t/mysqlbinlog2.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqldump.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqltest.test: Use MYSQLTEST_VARDIR mysql-test/t/ndb_autodiscover.test: Use MYSQLTEST_VARDIR mysql-test/t/outfile.test: Use MYSQLTEST_VARDIR mysql-test/t/query_cache.test: Add missing drop function mysql-test/t/repair.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000001.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000004.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000009.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000015-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl000017-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_EE_error.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_charset.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_drop_db.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_innodb.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_m.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_s.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddatalocal.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_log.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_misc_functions-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_misc_functions.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_replicate_do.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rewrite_db.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rotate_logs-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_rotate_logs.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_timezone.test: Use MYSQLTEST_VARDIR mysql-test/t/show_check.test: Use MYSQLTEST_VARDIR mysql-test/t/sp-destruct.test: Use MYSQLTEST_VARDIR mysql-test/t/symlink.test: Use MYSQLTEST_VARDIR mysql-test/t/temp_table-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/trigger-compat.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger-grant.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger.test: Use "../std_data_ln" to find std_data files mysql-test/t/type_varchar.test: Use MYSQLTEST_VARDIR mysql-test/t/user_var-binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/view.test: Use "../std_data_ln" to find std_data files mysql-test/t/warnings.test: Use "../std_data_ln" to find std_data files mysql-test/include/sourced.inc: New BitKeeper file ``mysql-test/include/sourced.inc'' mysql-test/include/sourced1.inc: New BitKeeper file ``mysql-test/include/sourced1.inc''
20 years ago
Bug#25714 "getGeneratedKeys() does not work with FEDERATED table" mysql_insert() expected the storage engine to update the row data during the write_row() operation with the value of the new auto- increment field. The field must be updated when only one row has been inserted as mysql_insert() would ignore the thd->last_insert. This patch implements HA_STATUS_AUTO support in ha_federated::info() and ensures that ha_federated::write_row() does update the row's auto-increment value. The test case was written in C as the protocol's 'id' value is accessible through libmysqlclient and not via SQL statements. mysql-test-run.pl was extended to enable running the test binary. mysql-test/mysql-test-run.pl: bug25714 implement support to run C test for bug25714 sql/ha_federated.cc: bug25714 The storage engine instance property auto_increment_value was not being set. mysql_insert() requires that the storage engine updates the row with the auto-increment value, especially when only inserting one row. Implement support for ha_federated::info(HA_STATUS_AUTO) tests/Makefile.am: bug25714 build C test for bug mysql-test/include/have_bug25714.inc: New BitKeeper file ``mysql-test/include/have_bug25714.inc'' mysql-test/r/federated_bug_25714.result: New BitKeeper file ``mysql-test/r/federated_bug_25714.result'' mysql-test/r/have_bug25714.require: New BitKeeper file ``mysql-test/r/have_bug25714.require'' mysql-test/t/federated_bug_25714.test: New BitKeeper file ``mysql-test/t/federated_bug_25714.test'' tests/bug25714.c: New BitKeeper file ``tests/bug25714.c''
19 years ago
Bug#20166 mysql-test-run.pl does not test system privilege tables creation - Use mysql_system_tables.sql to create MySQL system tables in all places where we create them(mysql_install_db, mysql-test-run-pl and mysql_fix_privilege_tables.sql) BitKeeper/deleted/.del-init_db.sql: Rename: mysql-test/init_db.sql -> BitKeeper/deleted/.del-init_db.sql BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8: Rename: mysql-test/lib/init_db.sql -> BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8 BitKeeper/deleted/.del-mysql_create_system_tables.sh: Rename: scripts/mysql_create_system_tables.sh -> BitKeeper/deleted/.del-mysql_create_system_tables.sh BitKeeper/etc/ignore: Added scripts/mysql_fix_privilege_tables.sql to the ignore list mysql-test/Makefile.am: lib/init_db.sql has been removed mysql-test/mysql-test-run.pl: - Build var/tmp/bootstrap.sql from mysql_system_tables.sql, mysql_test_data_timezone.sql and fill_help_tables.sql and use it when bootsraping the system tables to use during test. mysql-test/r/create.result: Update result file mysql-test/r/derived.result: Update result file mysql-test/r/join.result: Update result file mysql-test/r/mysql_upgrade.result: Update result file mysql-test/r/sp-security.result: Update result file mysql-test/t/create.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/derived.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/grant2.test: Add anonymous users for part of thes that need it. mysql-test/t/grant_cache.test: Add anonymous users for part of thes that need it. mysql-test/t/init_connect.test: Add anonymous users for part of thes that need it. mysql-test/t/lock_multi.test: Add anonymous users for part of thes that need it. mysql-test/t/ndb_basic.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_index_ordered.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_multi.test: Connect as "root", blank user will take currently logged in username mysql-test/t/overflow.test: Connect as root - no anonymous users by default anymore mysql-test/t/rpl_temporary.test: Add anonymous users for the test mysql-test/t/xa.test: Connect as "root", blank user wil pick currently logged in user scripts/Makefile.am: Remove mysql_create_system_tables.sh Add mysql_system_tables.sql and mysql_test_data_timezone.sql Build mysql_fix_privilege_tables.sql from mysql_system_tables.sql and mysql_fix_privilege_tables.sql.in scripts/mysql_fix_privilege_tables.sh: Update message describing what the script does scripts/mysql_fix_privilege_tables.sql.in: Remove the part that creates system tables as that will be added to mysql_fix_privileg_tables.sql from mysql_system_tables.sql Change all comments to use # scripts/mysql_install_db.sh: Use mysql_system_tables.sql to create the MySQL system tables Update comments and indentation Add more descriptive comments about --windows switch Reduce number of hardcoded names for the SQL files the script looks for mysql-test/include/add_anonymous_users.inc: New BitKeeper file ``mysql-test/include/add_anonymous_users.inc'' mysql-test/include/delete_anonymous_users.inc: New BitKeeper file ``mysql-test/include/delete_anonymous_users.inc'' scripts/mysql_system_tables.sql: New BitKeeper file ``scripts/mysql_system_tables.sql'' scripts/mysql_test_data_timezone.sql: New BitKeeper file ``scripts/mysql_test_data_timezone.sql''
19 years ago
Make it possible to run mysql-test-run.pl with default test suite in different vardir. mysql-test/include/have_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/include/test_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/mysql-test-run.pl: Create variable $MYSQLTEST_VARDIR that points to the vardir Don't create a symlink from var/ to the physical vardir if it's somewhere else Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp" mysql-test/mysql-test-run.sh: Export MYSQLTEST_VARDIR, always pointing at mysql-test/var mysql-test/r/backup.result: Use MYSQLTEST_VARDIR mysql-test/r/blackhole.result: Use "../std_data_ln" to find std_data files mysql-test/r/loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqlbinlog.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqltest.result: Use MYSQLTEST_VARDIR mysql-test/r/outfile.result: Use MYSQLTEST_VARDIR mysql-test/r/query_cache.result: Add missing drop function mysql-test/r/rpl000001.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl000004.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_innodb.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_m.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_s.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddatalocal.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_log.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_misc_functions.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_replicate_do.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_rewrite_db.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_timezone.result: Use "../std_data_ln" to find std_data files mysql-test/r/symlink.result: Use MYSQLTEST_VARDIR mysql-test/r/trigger.result: Use "../std_data_ln" to find std_data files mysql-test/r/view.result: Use "../std_data_ln" to find std_data files mysql-test/r/warnings.result: Use "../std_data_ln" to find std_data files mysql-test/t/backup-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/backup.test: Use MYSQLTEST_VARDIR mysql-test/t/blackhole.test: Use "../std_data_ln" to find std_data files mysql-test/t/ctype_ucs_binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/im_daemon_life_cycle-im.opt: Use MYSQLTEST_VARDIR mysql-test/t/im_options_set.imtest: Use MYSQLTEST_VARDIR mysql-test/t/im_options_unset.imtest: Use MYSQLTEST_VARDIR mysql-test/t/loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/myisam.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqlbinlog.test: Use "../std_data_ln" to find std_data files mysql-test/t/mysqlbinlog2.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqldump.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqltest.test: Use MYSQLTEST_VARDIR mysql-test/t/ndb_autodiscover.test: Use MYSQLTEST_VARDIR mysql-test/t/outfile.test: Use MYSQLTEST_VARDIR mysql-test/t/query_cache.test: Add missing drop function mysql-test/t/repair.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000001.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000004.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000009.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000015-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl000017-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_EE_error.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_charset.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_drop_db.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_innodb.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_m.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_s.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddatalocal.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_log.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_misc_functions-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_misc_functions.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_replicate_do.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rewrite_db.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rotate_logs-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_rotate_logs.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_timezone.test: Use MYSQLTEST_VARDIR mysql-test/t/show_check.test: Use MYSQLTEST_VARDIR mysql-test/t/sp-destruct.test: Use MYSQLTEST_VARDIR mysql-test/t/symlink.test: Use MYSQLTEST_VARDIR mysql-test/t/temp_table-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/trigger-compat.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger-grant.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger.test: Use "../std_data_ln" to find std_data files mysql-test/t/type_varchar.test: Use MYSQLTEST_VARDIR mysql-test/t/user_var-binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/view.test: Use "../std_data_ln" to find std_data files mysql-test/t/warnings.test: Use "../std_data_ln" to find std_data files mysql-test/include/sourced.inc: New BitKeeper file ``mysql-test/include/sourced.inc'' mysql-test/include/sourced1.inc: New BitKeeper file ``mysql-test/include/sourced1.inc''
20 years ago
Make it possible to run mysql-test-run.pl with default test suite in different vardir. mysql-test/include/have_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/include/test_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/mysql-test-run.pl: Create variable $MYSQLTEST_VARDIR that points to the vardir Don't create a symlink from var/ to the physical vardir if it's somewhere else Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp" mysql-test/mysql-test-run.sh: Export MYSQLTEST_VARDIR, always pointing at mysql-test/var mysql-test/r/backup.result: Use MYSQLTEST_VARDIR mysql-test/r/blackhole.result: Use "../std_data_ln" to find std_data files mysql-test/r/loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqlbinlog.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqltest.result: Use MYSQLTEST_VARDIR mysql-test/r/outfile.result: Use MYSQLTEST_VARDIR mysql-test/r/query_cache.result: Add missing drop function mysql-test/r/rpl000001.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl000004.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_innodb.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_m.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_s.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddatalocal.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_log.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_misc_functions.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_replicate_do.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_rewrite_db.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_timezone.result: Use "../std_data_ln" to find std_data files mysql-test/r/symlink.result: Use MYSQLTEST_VARDIR mysql-test/r/trigger.result: Use "../std_data_ln" to find std_data files mysql-test/r/view.result: Use "../std_data_ln" to find std_data files mysql-test/r/warnings.result: Use "../std_data_ln" to find std_data files mysql-test/t/backup-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/backup.test: Use MYSQLTEST_VARDIR mysql-test/t/blackhole.test: Use "../std_data_ln" to find std_data files mysql-test/t/ctype_ucs_binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/im_daemon_life_cycle-im.opt: Use MYSQLTEST_VARDIR mysql-test/t/im_options_set.imtest: Use MYSQLTEST_VARDIR mysql-test/t/im_options_unset.imtest: Use MYSQLTEST_VARDIR mysql-test/t/loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/myisam.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqlbinlog.test: Use "../std_data_ln" to find std_data files mysql-test/t/mysqlbinlog2.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqldump.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqltest.test: Use MYSQLTEST_VARDIR mysql-test/t/ndb_autodiscover.test: Use MYSQLTEST_VARDIR mysql-test/t/outfile.test: Use MYSQLTEST_VARDIR mysql-test/t/query_cache.test: Add missing drop function mysql-test/t/repair.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000001.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000004.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000009.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000015-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl000017-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_EE_error.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_charset.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_drop_db.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_innodb.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_m.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_s.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddatalocal.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_log.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_misc_functions-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_misc_functions.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_replicate_do.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rewrite_db.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rotate_logs-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_rotate_logs.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_timezone.test: Use MYSQLTEST_VARDIR mysql-test/t/show_check.test: Use MYSQLTEST_VARDIR mysql-test/t/sp-destruct.test: Use MYSQLTEST_VARDIR mysql-test/t/symlink.test: Use MYSQLTEST_VARDIR mysql-test/t/temp_table-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/trigger-compat.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger-grant.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger.test: Use "../std_data_ln" to find std_data files mysql-test/t/type_varchar.test: Use MYSQLTEST_VARDIR mysql-test/t/user_var-binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/view.test: Use "../std_data_ln" to find std_data files mysql-test/t/warnings.test: Use "../std_data_ln" to find std_data files mysql-test/include/sourced.inc: New BitKeeper file ``mysql-test/include/sourced.inc'' mysql-test/include/sourced1.inc: New BitKeeper file ``mysql-test/include/sourced1.inc''
20 years ago
Make it possible to run mysql-test-run.pl with default test suite in different vardir. mysql-test/include/have_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/include/test_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/mysql-test-run.pl: Create variable $MYSQLTEST_VARDIR that points to the vardir Don't create a symlink from var/ to the physical vardir if it's somewhere else Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp" mysql-test/mysql-test-run.sh: Export MYSQLTEST_VARDIR, always pointing at mysql-test/var mysql-test/r/backup.result: Use MYSQLTEST_VARDIR mysql-test/r/blackhole.result: Use "../std_data_ln" to find std_data files mysql-test/r/loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqlbinlog.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqltest.result: Use MYSQLTEST_VARDIR mysql-test/r/outfile.result: Use MYSQLTEST_VARDIR mysql-test/r/query_cache.result: Add missing drop function mysql-test/r/rpl000001.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl000004.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_innodb.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_m.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_s.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddatalocal.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_log.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_misc_functions.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_replicate_do.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_rewrite_db.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_timezone.result: Use "../std_data_ln" to find std_data files mysql-test/r/symlink.result: Use MYSQLTEST_VARDIR mysql-test/r/trigger.result: Use "../std_data_ln" to find std_data files mysql-test/r/view.result: Use "../std_data_ln" to find std_data files mysql-test/r/warnings.result: Use "../std_data_ln" to find std_data files mysql-test/t/backup-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/backup.test: Use MYSQLTEST_VARDIR mysql-test/t/blackhole.test: Use "../std_data_ln" to find std_data files mysql-test/t/ctype_ucs_binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/im_daemon_life_cycle-im.opt: Use MYSQLTEST_VARDIR mysql-test/t/im_options_set.imtest: Use MYSQLTEST_VARDIR mysql-test/t/im_options_unset.imtest: Use MYSQLTEST_VARDIR mysql-test/t/loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/myisam.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqlbinlog.test: Use "../std_data_ln" to find std_data files mysql-test/t/mysqlbinlog2.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqldump.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqltest.test: Use MYSQLTEST_VARDIR mysql-test/t/ndb_autodiscover.test: Use MYSQLTEST_VARDIR mysql-test/t/outfile.test: Use MYSQLTEST_VARDIR mysql-test/t/query_cache.test: Add missing drop function mysql-test/t/repair.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000001.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000004.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000009.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000015-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl000017-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_EE_error.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_charset.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_drop_db.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_innodb.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_m.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_s.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddatalocal.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_log.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_misc_functions-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_misc_functions.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_replicate_do.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rewrite_db.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rotate_logs-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_rotate_logs.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_timezone.test: Use MYSQLTEST_VARDIR mysql-test/t/show_check.test: Use MYSQLTEST_VARDIR mysql-test/t/sp-destruct.test: Use MYSQLTEST_VARDIR mysql-test/t/symlink.test: Use MYSQLTEST_VARDIR mysql-test/t/temp_table-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/trigger-compat.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger-grant.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger.test: Use "../std_data_ln" to find std_data files mysql-test/t/type_varchar.test: Use MYSQLTEST_VARDIR mysql-test/t/user_var-binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/view.test: Use "../std_data_ln" to find std_data files mysql-test/t/warnings.test: Use "../std_data_ln" to find std_data files mysql-test/include/sourced.inc: New BitKeeper file ``mysql-test/include/sourced.inc'' mysql-test/include/sourced1.inc: New BitKeeper file ``mysql-test/include/sourced1.inc''
20 years ago
Make it possible to run mysql-test-run.pl with default test suite in different vardir. mysql-test/include/have_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/include/test_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/mysql-test-run.pl: Create variable $MYSQLTEST_VARDIR that points to the vardir Don't create a symlink from var/ to the physical vardir if it's somewhere else Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp" mysql-test/mysql-test-run.sh: Export MYSQLTEST_VARDIR, always pointing at mysql-test/var mysql-test/r/backup.result: Use MYSQLTEST_VARDIR mysql-test/r/blackhole.result: Use "../std_data_ln" to find std_data files mysql-test/r/loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqlbinlog.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqltest.result: Use MYSQLTEST_VARDIR mysql-test/r/outfile.result: Use MYSQLTEST_VARDIR mysql-test/r/query_cache.result: Add missing drop function mysql-test/r/rpl000001.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl000004.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_innodb.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_m.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_s.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddatalocal.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_log.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_misc_functions.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_replicate_do.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_rewrite_db.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_timezone.result: Use "../std_data_ln" to find std_data files mysql-test/r/symlink.result: Use MYSQLTEST_VARDIR mysql-test/r/trigger.result: Use "../std_data_ln" to find std_data files mysql-test/r/view.result: Use "../std_data_ln" to find std_data files mysql-test/r/warnings.result: Use "../std_data_ln" to find std_data files mysql-test/t/backup-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/backup.test: Use MYSQLTEST_VARDIR mysql-test/t/blackhole.test: Use "../std_data_ln" to find std_data files mysql-test/t/ctype_ucs_binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/im_daemon_life_cycle-im.opt: Use MYSQLTEST_VARDIR mysql-test/t/im_options_set.imtest: Use MYSQLTEST_VARDIR mysql-test/t/im_options_unset.imtest: Use MYSQLTEST_VARDIR mysql-test/t/loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/myisam.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqlbinlog.test: Use "../std_data_ln" to find std_data files mysql-test/t/mysqlbinlog2.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqldump.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqltest.test: Use MYSQLTEST_VARDIR mysql-test/t/ndb_autodiscover.test: Use MYSQLTEST_VARDIR mysql-test/t/outfile.test: Use MYSQLTEST_VARDIR mysql-test/t/query_cache.test: Add missing drop function mysql-test/t/repair.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000001.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000004.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000009.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000015-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl000017-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_EE_error.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_charset.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_drop_db.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_innodb.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_m.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_s.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddatalocal.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_log.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_misc_functions-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_misc_functions.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_replicate_do.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rewrite_db.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rotate_logs-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_rotate_logs.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_timezone.test: Use MYSQLTEST_VARDIR mysql-test/t/show_check.test: Use MYSQLTEST_VARDIR mysql-test/t/sp-destruct.test: Use MYSQLTEST_VARDIR mysql-test/t/symlink.test: Use MYSQLTEST_VARDIR mysql-test/t/temp_table-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/trigger-compat.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger-grant.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger.test: Use "../std_data_ln" to find std_data files mysql-test/t/type_varchar.test: Use MYSQLTEST_VARDIR mysql-test/t/user_var-binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/view.test: Use "../std_data_ln" to find std_data files mysql-test/t/warnings.test: Use "../std_data_ln" to find std_data files mysql-test/include/sourced.inc: New BitKeeper file ``mysql-test/include/sourced.inc'' mysql-test/include/sourced1.inc: New BitKeeper file ``mysql-test/include/sourced1.inc''
20 years ago
Make it possible to run mysql-test-run.pl with default test suite in different vardir. mysql-test/include/have_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/include/test_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/mysql-test-run.pl: Create variable $MYSQLTEST_VARDIR that points to the vardir Don't create a symlink from var/ to the physical vardir if it's somewhere else Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp" mysql-test/mysql-test-run.sh: Export MYSQLTEST_VARDIR, always pointing at mysql-test/var mysql-test/r/backup.result: Use MYSQLTEST_VARDIR mysql-test/r/blackhole.result: Use "../std_data_ln" to find std_data files mysql-test/r/loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqlbinlog.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqltest.result: Use MYSQLTEST_VARDIR mysql-test/r/outfile.result: Use MYSQLTEST_VARDIR mysql-test/r/query_cache.result: Add missing drop function mysql-test/r/rpl000001.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl000004.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_innodb.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_m.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_s.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddatalocal.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_log.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_misc_functions.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_replicate_do.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_rewrite_db.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_timezone.result: Use "../std_data_ln" to find std_data files mysql-test/r/symlink.result: Use MYSQLTEST_VARDIR mysql-test/r/trigger.result: Use "../std_data_ln" to find std_data files mysql-test/r/view.result: Use "../std_data_ln" to find std_data files mysql-test/r/warnings.result: Use "../std_data_ln" to find std_data files mysql-test/t/backup-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/backup.test: Use MYSQLTEST_VARDIR mysql-test/t/blackhole.test: Use "../std_data_ln" to find std_data files mysql-test/t/ctype_ucs_binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/im_daemon_life_cycle-im.opt: Use MYSQLTEST_VARDIR mysql-test/t/im_options_set.imtest: Use MYSQLTEST_VARDIR mysql-test/t/im_options_unset.imtest: Use MYSQLTEST_VARDIR mysql-test/t/loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/myisam.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqlbinlog.test: Use "../std_data_ln" to find std_data files mysql-test/t/mysqlbinlog2.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqldump.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqltest.test: Use MYSQLTEST_VARDIR mysql-test/t/ndb_autodiscover.test: Use MYSQLTEST_VARDIR mysql-test/t/outfile.test: Use MYSQLTEST_VARDIR mysql-test/t/query_cache.test: Add missing drop function mysql-test/t/repair.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000001.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000004.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000009.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000015-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl000017-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_EE_error.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_charset.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_drop_db.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_innodb.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_m.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_s.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddatalocal.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_log.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_misc_functions-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_misc_functions.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_replicate_do.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rewrite_db.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rotate_logs-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_rotate_logs.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_timezone.test: Use MYSQLTEST_VARDIR mysql-test/t/show_check.test: Use MYSQLTEST_VARDIR mysql-test/t/sp-destruct.test: Use MYSQLTEST_VARDIR mysql-test/t/symlink.test: Use MYSQLTEST_VARDIR mysql-test/t/temp_table-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/trigger-compat.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger-grant.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger.test: Use "../std_data_ln" to find std_data files mysql-test/t/type_varchar.test: Use MYSQLTEST_VARDIR mysql-test/t/user_var-binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/view.test: Use "../std_data_ln" to find std_data files mysql-test/t/warnings.test: Use "../std_data_ln" to find std_data files mysql-test/include/sourced.inc: New BitKeeper file ``mysql-test/include/sourced.inc'' mysql-test/include/sourced1.inc: New BitKeeper file ``mysql-test/include/sourced1.inc''
20 years ago
Make it possible to run mysql-test-run.pl with default test suite in different vardir. mysql-test/include/have_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/include/test_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/mysql-test-run.pl: Create variable $MYSQLTEST_VARDIR that points to the vardir Don't create a symlink from var/ to the physical vardir if it's somewhere else Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp" mysql-test/mysql-test-run.sh: Export MYSQLTEST_VARDIR, always pointing at mysql-test/var mysql-test/r/backup.result: Use MYSQLTEST_VARDIR mysql-test/r/blackhole.result: Use "../std_data_ln" to find std_data files mysql-test/r/loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqlbinlog.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqltest.result: Use MYSQLTEST_VARDIR mysql-test/r/outfile.result: Use MYSQLTEST_VARDIR mysql-test/r/query_cache.result: Add missing drop function mysql-test/r/rpl000001.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl000004.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_innodb.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_m.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_s.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddatalocal.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_log.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_misc_functions.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_replicate_do.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_rewrite_db.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_timezone.result: Use "../std_data_ln" to find std_data files mysql-test/r/symlink.result: Use MYSQLTEST_VARDIR mysql-test/r/trigger.result: Use "../std_data_ln" to find std_data files mysql-test/r/view.result: Use "../std_data_ln" to find std_data files mysql-test/r/warnings.result: Use "../std_data_ln" to find std_data files mysql-test/t/backup-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/backup.test: Use MYSQLTEST_VARDIR mysql-test/t/blackhole.test: Use "../std_data_ln" to find std_data files mysql-test/t/ctype_ucs_binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/im_daemon_life_cycle-im.opt: Use MYSQLTEST_VARDIR mysql-test/t/im_options_set.imtest: Use MYSQLTEST_VARDIR mysql-test/t/im_options_unset.imtest: Use MYSQLTEST_VARDIR mysql-test/t/loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/myisam.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqlbinlog.test: Use "../std_data_ln" to find std_data files mysql-test/t/mysqlbinlog2.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqldump.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqltest.test: Use MYSQLTEST_VARDIR mysql-test/t/ndb_autodiscover.test: Use MYSQLTEST_VARDIR mysql-test/t/outfile.test: Use MYSQLTEST_VARDIR mysql-test/t/query_cache.test: Add missing drop function mysql-test/t/repair.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000001.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000004.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000009.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000015-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl000017-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_EE_error.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_charset.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_drop_db.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_innodb.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_m.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_s.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddatalocal.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_log.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_misc_functions-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_misc_functions.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_replicate_do.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rewrite_db.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rotate_logs-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_rotate_logs.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_timezone.test: Use MYSQLTEST_VARDIR mysql-test/t/show_check.test: Use MYSQLTEST_VARDIR mysql-test/t/sp-destruct.test: Use MYSQLTEST_VARDIR mysql-test/t/symlink.test: Use MYSQLTEST_VARDIR mysql-test/t/temp_table-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/trigger-compat.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger-grant.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger.test: Use "../std_data_ln" to find std_data files mysql-test/t/type_varchar.test: Use MYSQLTEST_VARDIR mysql-test/t/user_var-binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/view.test: Use "../std_data_ln" to find std_data files mysql-test/t/warnings.test: Use "../std_data_ln" to find std_data files mysql-test/include/sourced.inc: New BitKeeper file ``mysql-test/include/sourced.inc'' mysql-test/include/sourced1.inc: New BitKeeper file ``mysql-test/include/sourced1.inc''
20 years ago
Make it possible to run mysql-test-run.pl with default test suite in different vardir. mysql-test/include/have_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/include/test_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/mysql-test-run.pl: Create variable $MYSQLTEST_VARDIR that points to the vardir Don't create a symlink from var/ to the physical vardir if it's somewhere else Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp" mysql-test/mysql-test-run.sh: Export MYSQLTEST_VARDIR, always pointing at mysql-test/var mysql-test/r/backup.result: Use MYSQLTEST_VARDIR mysql-test/r/blackhole.result: Use "../std_data_ln" to find std_data files mysql-test/r/loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqlbinlog.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqltest.result: Use MYSQLTEST_VARDIR mysql-test/r/outfile.result: Use MYSQLTEST_VARDIR mysql-test/r/query_cache.result: Add missing drop function mysql-test/r/rpl000001.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl000004.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_innodb.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_m.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_s.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddatalocal.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_log.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_misc_functions.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_replicate_do.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_rewrite_db.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_timezone.result: Use "../std_data_ln" to find std_data files mysql-test/r/symlink.result: Use MYSQLTEST_VARDIR mysql-test/r/trigger.result: Use "../std_data_ln" to find std_data files mysql-test/r/view.result: Use "../std_data_ln" to find std_data files mysql-test/r/warnings.result: Use "../std_data_ln" to find std_data files mysql-test/t/backup-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/backup.test: Use MYSQLTEST_VARDIR mysql-test/t/blackhole.test: Use "../std_data_ln" to find std_data files mysql-test/t/ctype_ucs_binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/im_daemon_life_cycle-im.opt: Use MYSQLTEST_VARDIR mysql-test/t/im_options_set.imtest: Use MYSQLTEST_VARDIR mysql-test/t/im_options_unset.imtest: Use MYSQLTEST_VARDIR mysql-test/t/loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/myisam.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqlbinlog.test: Use "../std_data_ln" to find std_data files mysql-test/t/mysqlbinlog2.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqldump.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqltest.test: Use MYSQLTEST_VARDIR mysql-test/t/ndb_autodiscover.test: Use MYSQLTEST_VARDIR mysql-test/t/outfile.test: Use MYSQLTEST_VARDIR mysql-test/t/query_cache.test: Add missing drop function mysql-test/t/repair.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000001.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000004.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000009.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000015-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl000017-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_EE_error.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_charset.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_drop_db.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_innodb.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_m.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_s.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddatalocal.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_log.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_misc_functions-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_misc_functions.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_replicate_do.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rewrite_db.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rotate_logs-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_rotate_logs.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_timezone.test: Use MYSQLTEST_VARDIR mysql-test/t/show_check.test: Use MYSQLTEST_VARDIR mysql-test/t/sp-destruct.test: Use MYSQLTEST_VARDIR mysql-test/t/symlink.test: Use MYSQLTEST_VARDIR mysql-test/t/temp_table-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/trigger-compat.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger-grant.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger.test: Use "../std_data_ln" to find std_data files mysql-test/t/type_varchar.test: Use MYSQLTEST_VARDIR mysql-test/t/user_var-binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/view.test: Use "../std_data_ln" to find std_data files mysql-test/t/warnings.test: Use "../std_data_ln" to find std_data files mysql-test/include/sourced.inc: New BitKeeper file ``mysql-test/include/sourced.inc'' mysql-test/include/sourced1.inc: New BitKeeper file ``mysql-test/include/sourced1.inc''
20 years ago
Make it possible to run mysql-test-run.pl with default test suite in different vardir. mysql-test/include/have_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/include/test_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/mysql-test-run.pl: Create variable $MYSQLTEST_VARDIR that points to the vardir Don't create a symlink from var/ to the physical vardir if it's somewhere else Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp" mysql-test/mysql-test-run.sh: Export MYSQLTEST_VARDIR, always pointing at mysql-test/var mysql-test/r/backup.result: Use MYSQLTEST_VARDIR mysql-test/r/blackhole.result: Use "../std_data_ln" to find std_data files mysql-test/r/loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqlbinlog.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqltest.result: Use MYSQLTEST_VARDIR mysql-test/r/outfile.result: Use MYSQLTEST_VARDIR mysql-test/r/query_cache.result: Add missing drop function mysql-test/r/rpl000001.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl000004.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_innodb.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_m.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_s.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddatalocal.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_log.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_misc_functions.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_replicate_do.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_rewrite_db.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_timezone.result: Use "../std_data_ln" to find std_data files mysql-test/r/symlink.result: Use MYSQLTEST_VARDIR mysql-test/r/trigger.result: Use "../std_data_ln" to find std_data files mysql-test/r/view.result: Use "../std_data_ln" to find std_data files mysql-test/r/warnings.result: Use "../std_data_ln" to find std_data files mysql-test/t/backup-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/backup.test: Use MYSQLTEST_VARDIR mysql-test/t/blackhole.test: Use "../std_data_ln" to find std_data files mysql-test/t/ctype_ucs_binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/im_daemon_life_cycle-im.opt: Use MYSQLTEST_VARDIR mysql-test/t/im_options_set.imtest: Use MYSQLTEST_VARDIR mysql-test/t/im_options_unset.imtest: Use MYSQLTEST_VARDIR mysql-test/t/loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/myisam.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqlbinlog.test: Use "../std_data_ln" to find std_data files mysql-test/t/mysqlbinlog2.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqldump.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqltest.test: Use MYSQLTEST_VARDIR mysql-test/t/ndb_autodiscover.test: Use MYSQLTEST_VARDIR mysql-test/t/outfile.test: Use MYSQLTEST_VARDIR mysql-test/t/query_cache.test: Add missing drop function mysql-test/t/repair.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000001.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000004.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000009.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000015-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl000017-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_EE_error.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_charset.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_drop_db.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_innodb.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_m.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_s.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddatalocal.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_log.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_misc_functions-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_misc_functions.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_replicate_do.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rewrite_db.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rotate_logs-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_rotate_logs.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_timezone.test: Use MYSQLTEST_VARDIR mysql-test/t/show_check.test: Use MYSQLTEST_VARDIR mysql-test/t/sp-destruct.test: Use MYSQLTEST_VARDIR mysql-test/t/symlink.test: Use MYSQLTEST_VARDIR mysql-test/t/temp_table-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/trigger-compat.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger-grant.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger.test: Use "../std_data_ln" to find std_data files mysql-test/t/type_varchar.test: Use MYSQLTEST_VARDIR mysql-test/t/user_var-binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/view.test: Use "../std_data_ln" to find std_data files mysql-test/t/warnings.test: Use "../std_data_ln" to find std_data files mysql-test/include/sourced.inc: New BitKeeper file ``mysql-test/include/sourced.inc'' mysql-test/include/sourced1.inc: New BitKeeper file ``mysql-test/include/sourced1.inc''
20 years ago
Make it possible to run mysql-test-run.pl with default test suite in different vardir. mysql-test/include/have_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/include/test_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/mysql-test-run.pl: Create variable $MYSQLTEST_VARDIR that points to the vardir Don't create a symlink from var/ to the physical vardir if it's somewhere else Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp" mysql-test/mysql-test-run.sh: Export MYSQLTEST_VARDIR, always pointing at mysql-test/var mysql-test/r/backup.result: Use MYSQLTEST_VARDIR mysql-test/r/blackhole.result: Use "../std_data_ln" to find std_data files mysql-test/r/loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqlbinlog.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqltest.result: Use MYSQLTEST_VARDIR mysql-test/r/outfile.result: Use MYSQLTEST_VARDIR mysql-test/r/query_cache.result: Add missing drop function mysql-test/r/rpl000001.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl000004.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_innodb.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_m.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_s.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddatalocal.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_log.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_misc_functions.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_replicate_do.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_rewrite_db.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_timezone.result: Use "../std_data_ln" to find std_data files mysql-test/r/symlink.result: Use MYSQLTEST_VARDIR mysql-test/r/trigger.result: Use "../std_data_ln" to find std_data files mysql-test/r/view.result: Use "../std_data_ln" to find std_data files mysql-test/r/warnings.result: Use "../std_data_ln" to find std_data files mysql-test/t/backup-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/backup.test: Use MYSQLTEST_VARDIR mysql-test/t/blackhole.test: Use "../std_data_ln" to find std_data files mysql-test/t/ctype_ucs_binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/im_daemon_life_cycle-im.opt: Use MYSQLTEST_VARDIR mysql-test/t/im_options_set.imtest: Use MYSQLTEST_VARDIR mysql-test/t/im_options_unset.imtest: Use MYSQLTEST_VARDIR mysql-test/t/loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/myisam.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqlbinlog.test: Use "../std_data_ln" to find std_data files mysql-test/t/mysqlbinlog2.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqldump.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqltest.test: Use MYSQLTEST_VARDIR mysql-test/t/ndb_autodiscover.test: Use MYSQLTEST_VARDIR mysql-test/t/outfile.test: Use MYSQLTEST_VARDIR mysql-test/t/query_cache.test: Add missing drop function mysql-test/t/repair.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000001.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000004.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000009.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000015-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl000017-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_EE_error.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_charset.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_drop_db.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_innodb.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_m.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_s.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddatalocal.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_log.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_misc_functions-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_misc_functions.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_replicate_do.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rewrite_db.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rotate_logs-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_rotate_logs.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_timezone.test: Use MYSQLTEST_VARDIR mysql-test/t/show_check.test: Use MYSQLTEST_VARDIR mysql-test/t/sp-destruct.test: Use MYSQLTEST_VARDIR mysql-test/t/symlink.test: Use MYSQLTEST_VARDIR mysql-test/t/temp_table-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/trigger-compat.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger-grant.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger.test: Use "../std_data_ln" to find std_data files mysql-test/t/type_varchar.test: Use MYSQLTEST_VARDIR mysql-test/t/user_var-binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/view.test: Use "../std_data_ln" to find std_data files mysql-test/t/warnings.test: Use "../std_data_ln" to find std_data files mysql-test/include/sourced.inc: New BitKeeper file ``mysql-test/include/sourced.inc'' mysql-test/include/sourced1.inc: New BitKeeper file ``mysql-test/include/sourced1.inc''
20 years ago
Remove compiler warnings (Mostly in DBUG_PRINT() and unused arguments) Fixed bug in query cache when used with traceing (--with-debug) Fixed memory leak in mysqldump Removed warnings from mysqltest scripts (replaced -- with #) BitKeeper/etc/ignore: added mysql-test/r/*.warnings BUILD/SETUP.sh: Don't build with BDB as default client/client_priv.h: Added OPT_DEBUG_INFO client/mysqlbinlog.cc: Fixed compiler warning client/mysqldump.c: Removed compiler warnings Added option --debug-info to detect memory leaks Fixed memory leak Don't backup cluster replication tables (if used with 5.1) cmd-line-utils/readline/bind.c: Fixed compiler warning cmd-line-utils/readline/chardefs.h: Fixed compiler warning cmd-line-utils/readline/complete.c: Fixed compiler warning cmd-line-utils/readline/display.c: Fixed compiler warning cmd-line-utils/readline/histexpand.c: Fixed compiler warning cmd-line-utils/readline/input.c: Fixed compiler warning cmd-line-utils/readline/isearch.c: Fixed compiler warning cmd-line-utils/readline/kill.c: Fixed compiler warning cmd-line-utils/readline/macro.c: Fixed compiler warning cmd-line-utils/readline/misc.c: Fixed compiler warning cmd-line-utils/readline/nls.c: Fixed compiler warning cmd-line-utils/readline/readline.c: Fixed compiler warning cmd-line-utils/readline/rltty.c: Fixed compiler warning cmd-line-utils/readline/search.c: Fixed compiler warning cmd-line-utils/readline/terminal.c: Fixed compiler warning cmd-line-utils/readline/text.c: Fixed compiler warning cmd-line-utils/readline/tilde.c: Fixed compiler warning cmd-line-utils/readline/undo.c: Fixed compiler warning cmd-line-utils/readline/util.c: Fixed compiler warning cmd-line-utils/readline/vi_mode.c: Fixed compiler warning dbug/dbug_analyze.c: Fixed compiler warning extra/yassl/src/ssl.cpp: Fixed compiler warning extra/yassl/testsuite/testsuite.cpp: Fixed compiler warning heap/_check.c: Fixed compiler warning heap/hp_delete.c: Fixed compiler warning heap/hp_hash.c: Fixed compiler warning heap/hp_open.c: Fixed compiler warning heap/hp_rkey.c: Fixed compiler warning heap/hp_rrnd.c: Fixed compiler warning heap/hp_write.c: Fixed compiler warning libmysql/libmysql.c: Fixed compiler warning libmysqld/libmysqld.c: Fixed compiler warning myisam/mi_close.c: Fixed compiler warning myisam/mi_delete.c: Fixed compiler warning myisam/mi_dynrec.c: Fixed compiler warning myisam/mi_keycache.c: Fixed compiler warning myisam/mi_page.c: Fixed compiler warning myisam/mi_statrec.c: Fixed compiler warning myisam/mi_test2.c: Fixed compiler warning myisam/mi_write.c: Fixed compiler warning myisam/myisampack.c: Fixed compiler warning myisammrg/myrg_extra.c: Fixed compiler warning mysql-test/mysql-test-run.pl: Remove .reject, .progress, .log and .warnings flag at start cluster -> mysql database (for 5.1) mysql-test/include/federated.inc: Remove mysqltest warnings mysql-test/include/sp-vars.inc: Remove mysqltest warnings mysql-test/mysql-test-run.sh: Fix so that 'make test' works again Remove .reject, .progress .log and .warnings files at startup mysql-test/r/ctype_cp1250_ch.result: Drop used tables at startup mysql-test/t/create.test: Remove mysqltest warnings mysql-test/t/csv.test: Remove mysqltest warnings mysql-test/t/ctype_collate.test: Remove mysqltest warnings mysql-test/t/ctype_cp1250_ch.test: Drop used tables at startup mysql-test/t/ctype_ucs.test: Remove mysqltest warnings mysql-test/t/func_sapdb.test: Remove mysqltest warnings mysql-test/t/func_str.test: Remove mysqltest warnings mysql-test/t/grant.test: Remove mysqltest warnings mysql-test/t/greedy_optimizer.test: Remove mysqltest warnings mysql-test/t/group_min_max.test: Remove mysqltest warnings mysql-test/t/innodb.test: Remove mysqltest warnings mysql-test/t/join.test: Remove mysqltest warnings mysql-test/t/limit.test: Remove mysqltest warnings mysql-test/t/null.test: Remove mysqltest warnings mysql-test/t/select.test: Remove mysqltest warnings mysql-test/t/sp-prelocking.test: Remove mysqltest warnings mysql-test/t/strict.test: Remove mysqltest warnings mysql-test/t/subselect.test: Remove mysqltest warnings mysql-test/t/type_newdecimal.test: Remove mysqltest warnings mysql-test/t/view_grant.test: Remove mysqltest warnings mysys/default.c: Fixed compiler warning mysys/hash.c: Fixed compiler warning mysys/list.c: Fixed compiler warning mysys/mf_iocache.c: Fixed compiler warning mysys/mf_keycache.c: Fixed compiler warning mysys/mf_keycaches.c: Fixed compiler warning mysys/my_alloc.c: Fixed compiler warning mysys/my_dup.c: Fixed compiler warning mysys/my_fopen.c: Fixed compiler warning mysys/my_fstream.c: Fixed compiler warning mysys/my_getwd.c: Fixed compiler warning mysys/my_handler.c: Fixed compiler warning Added missing enums in switch mysys/my_lib.c: Fixed compiler warning mysys/my_lread.c: Fixed compiler warning mysys/my_lwrite.c: Fixed compiler warning mysys/my_malloc.c: Fixed compiler warning mysys/my_pread.c: Fixed compiler warning mysys/my_read.c: Fixed compiler warning mysys/my_realloc.c: Fixed compiler warning mysys/my_seek.c: Fixed compiler warning mysys/my_write.c: Fixed compiler warning mysys/safemalloc.c: Fixed compiler warning mysys/thr_lock.c: Fixed compiler warning mysys/tree.c: Fixed compiler warning mysys/typelib.c: Fixed compiler warning ndb/include/logger/LogHandler.hpp: Changed SetErrorStr() to take const char* to remove compiler warnings (as many arguments to this are const strings) ndb/include/ndb_global.h.in: Added LINT_SET_PTR macro to be able to remove some compiler warnings ndb/include/util/InputStream.hpp: Fixed compiler warning ndb/include/util/OutputStream.hpp: Fixed compiler warning ndb/include/util/SimpleProperties.hpp: Fixed compiler warning ndb/src/common/debugger/EventLogger.cpp: remove if on 'signal' as this is a function pointer and is always true ndb/src/common/debugger/signaldata/BackupSignalData.cpp: Add missing enums ndb/src/common/logger/LogHandler.cpp: Changed SetErrorStr() to take const char* to remove compiler warnings (as many arguments to this are const strings) ndb/src/common/portlib/NdbMutex.c: Fixed compiler warning ndb/src/common/portlib/NdbThread.c: Fixed compiler warning ndb/src/common/transporter/Transporter.cpp: Swapped arguments to remove compiler warnings ndb/src/cw/cpcd/CPCD.hpp: Fixed compiler warning ndb/src/kernel/blocks/backup/Backup.cpp: Fixed compiler warning ndb/src/kernel/blocks/cmvmi/Cmvmi.cpp: Fixed compiler warning ndb/src/kernel/blocks/dbdict/Dbdict.cpp: Fixed compiler warning ndb/src/kernel/blocks/dbtux/DbtuxSearch.cpp: Fixed compiler warning ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp: Added missing enums ndb/src/kernel/blocks/qmgr/QmgrMain.cpp: Fixed compiler warning ndb/src/kernel/error/ErrorReporter.cpp: Fixed compiler warning ndb/src/kernel/error/ErrorReporter.hpp: Fixed compiler warning ndb/src/kernel/error/ndbd_exit_codes.c: Fixed compiler warning ndb/src/kernel/vm/TransporterCallback.cpp: Fixed compiler warning ndb/src/mgmapi/mgmapi.cpp: Fixed compiler warning ndb/src/mgmclient/CommandInterpreter.cpp: Fixed compiler warning ndb/src/mgmsrv/MgmtSrvr.cpp: Fixed compiler warning ndb/src/mgmsrv/Services.cpp: Fixed compiler warning ndb/src/ndbapi/ClusterMgr.cpp: Fixed compiler warning ndb/src/ndbapi/DictCache.cpp: Fixed compiler warning ndb/src/ndbapi/Ndb.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationDefine.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationExec.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationInt.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationSearch.cpp: Fixed compiler warning ndb/src/ndbapi/NdbTransaction.cpp: Fixed compiler warning ndb/src/ndbapi/Ndbif.cpp: Fixed compiler warning ndb/src/ndbapi/Ndbinit.cpp: Fixed compiler warning ndb/src/ndbapi/ndb_cluster_connection.cpp: Fixed compiler warning ndb/tools/drop_index.cpp: Fixed compiler warning ndb/tools/drop_tab.cpp: Fixed compiler warning ndb/tools/ndb_config.cpp: Fixed compiler warning regex/regexec.c: Fixed compiler warning server-tools/instance-manager/mysql_connection.cc: Fixed compiler warning sql/Makefile.am: Fix for bison 1.875, which adds an attribute statement that gcc 4.1.0 can't parse sql/filesort.cc: Fixed compiler warning sql/ha_archive.cc: Fixed compiler warning sql/ha_federated.cc: Fixed compiler warning sql/ha_federated.h: Fixed compiler warning sql/ha_innodb.cc: Fixed compiler warning sql/ha_myisam.cc: Fixed compiler warning sql/ha_myisammrg.cc: Fixed compiler warning sql/ha_ndbcluster.cc: Fixed compiler warning sql/handler.cc: Fixed compiler warning sql/item_cmpfunc.cc: Fixed compiler warning sql/item_subselect.cc: Fixed compiler warning sql/item_timefunc.cc: Fixed compiler warning sql/log_event.cc: Fixed compiler warning sql/mysqld.cc: Fixed compiler warning sql/net_serv.cc: Fixed compiler warning sql/opt_range.cc: Fixed compiler warning Formated DBUG statements to be as rest of code sql/slave.cc: Fixed compiler warning sql/sql_acl.cc: Fixed compiler warning sql/sql_cache.cc: Fixed compiler warning Fixed bug in query cache when used with DBUG traceing sql/sql_class.cc: Fixed compiler warning sql/sql_class.h: Fixed compiler warning sql/sql_delete.cc: Fixed compiler warning sql/sql_parse.cc: Fixed compiler warning Hack to fix my_sprintf() strings with %b sql/sql_prepare.cc: Fixed compiler warning Hack to fix my_sprintf() strings with %b sql/sql_repl.cc: Fixed compiler warning sql/sql_select.cc: Fixed compiler warning sql/sql_update.cc: Fixed compiler warning sql/sql_view.cc: Fixed compiler warning sql/strfunc.cc: Fixed compiler warning sql-common/client.c: Fixed compiler warning sql-common/my_time.c: Fixed compiler warning sql/table.cc: Fixed compiler warning sql/tztime.cc: Fixed compiler warning sql/unireg.cc: Fixed compiler warning strings/decimal.c: Fixed compiler warning tests/mysql_client_test.c: Fixed compiler warning vio/viosocket.c: Fixed compiler warning vio/viossl.c: Fixed compiler warning vio/viosslfactories.c: Fixed compiler warning
19 years ago
Remove compiler warnings (Mostly in DBUG_PRINT() and unused arguments) Fixed bug in query cache when used with traceing (--with-debug) Fixed memory leak in mysqldump Removed warnings from mysqltest scripts (replaced -- with #) BitKeeper/etc/ignore: added mysql-test/r/*.warnings BUILD/SETUP.sh: Don't build with BDB as default client/client_priv.h: Added OPT_DEBUG_INFO client/mysqlbinlog.cc: Fixed compiler warning client/mysqldump.c: Removed compiler warnings Added option --debug-info to detect memory leaks Fixed memory leak Don't backup cluster replication tables (if used with 5.1) cmd-line-utils/readline/bind.c: Fixed compiler warning cmd-line-utils/readline/chardefs.h: Fixed compiler warning cmd-line-utils/readline/complete.c: Fixed compiler warning cmd-line-utils/readline/display.c: Fixed compiler warning cmd-line-utils/readline/histexpand.c: Fixed compiler warning cmd-line-utils/readline/input.c: Fixed compiler warning cmd-line-utils/readline/isearch.c: Fixed compiler warning cmd-line-utils/readline/kill.c: Fixed compiler warning cmd-line-utils/readline/macro.c: Fixed compiler warning cmd-line-utils/readline/misc.c: Fixed compiler warning cmd-line-utils/readline/nls.c: Fixed compiler warning cmd-line-utils/readline/readline.c: Fixed compiler warning cmd-line-utils/readline/rltty.c: Fixed compiler warning cmd-line-utils/readline/search.c: Fixed compiler warning cmd-line-utils/readline/terminal.c: Fixed compiler warning cmd-line-utils/readline/text.c: Fixed compiler warning cmd-line-utils/readline/tilde.c: Fixed compiler warning cmd-line-utils/readline/undo.c: Fixed compiler warning cmd-line-utils/readline/util.c: Fixed compiler warning cmd-line-utils/readline/vi_mode.c: Fixed compiler warning dbug/dbug_analyze.c: Fixed compiler warning extra/yassl/src/ssl.cpp: Fixed compiler warning extra/yassl/testsuite/testsuite.cpp: Fixed compiler warning heap/_check.c: Fixed compiler warning heap/hp_delete.c: Fixed compiler warning heap/hp_hash.c: Fixed compiler warning heap/hp_open.c: Fixed compiler warning heap/hp_rkey.c: Fixed compiler warning heap/hp_rrnd.c: Fixed compiler warning heap/hp_write.c: Fixed compiler warning libmysql/libmysql.c: Fixed compiler warning libmysqld/libmysqld.c: Fixed compiler warning myisam/mi_close.c: Fixed compiler warning myisam/mi_delete.c: Fixed compiler warning myisam/mi_dynrec.c: Fixed compiler warning myisam/mi_keycache.c: Fixed compiler warning myisam/mi_page.c: Fixed compiler warning myisam/mi_statrec.c: Fixed compiler warning myisam/mi_test2.c: Fixed compiler warning myisam/mi_write.c: Fixed compiler warning myisam/myisampack.c: Fixed compiler warning myisammrg/myrg_extra.c: Fixed compiler warning mysql-test/mysql-test-run.pl: Remove .reject, .progress, .log and .warnings flag at start cluster -> mysql database (for 5.1) mysql-test/include/federated.inc: Remove mysqltest warnings mysql-test/include/sp-vars.inc: Remove mysqltest warnings mysql-test/mysql-test-run.sh: Fix so that 'make test' works again Remove .reject, .progress .log and .warnings files at startup mysql-test/r/ctype_cp1250_ch.result: Drop used tables at startup mysql-test/t/create.test: Remove mysqltest warnings mysql-test/t/csv.test: Remove mysqltest warnings mysql-test/t/ctype_collate.test: Remove mysqltest warnings mysql-test/t/ctype_cp1250_ch.test: Drop used tables at startup mysql-test/t/ctype_ucs.test: Remove mysqltest warnings mysql-test/t/func_sapdb.test: Remove mysqltest warnings mysql-test/t/func_str.test: Remove mysqltest warnings mysql-test/t/grant.test: Remove mysqltest warnings mysql-test/t/greedy_optimizer.test: Remove mysqltest warnings mysql-test/t/group_min_max.test: Remove mysqltest warnings mysql-test/t/innodb.test: Remove mysqltest warnings mysql-test/t/join.test: Remove mysqltest warnings mysql-test/t/limit.test: Remove mysqltest warnings mysql-test/t/null.test: Remove mysqltest warnings mysql-test/t/select.test: Remove mysqltest warnings mysql-test/t/sp-prelocking.test: Remove mysqltest warnings mysql-test/t/strict.test: Remove mysqltest warnings mysql-test/t/subselect.test: Remove mysqltest warnings mysql-test/t/type_newdecimal.test: Remove mysqltest warnings mysql-test/t/view_grant.test: Remove mysqltest warnings mysys/default.c: Fixed compiler warning mysys/hash.c: Fixed compiler warning mysys/list.c: Fixed compiler warning mysys/mf_iocache.c: Fixed compiler warning mysys/mf_keycache.c: Fixed compiler warning mysys/mf_keycaches.c: Fixed compiler warning mysys/my_alloc.c: Fixed compiler warning mysys/my_dup.c: Fixed compiler warning mysys/my_fopen.c: Fixed compiler warning mysys/my_fstream.c: Fixed compiler warning mysys/my_getwd.c: Fixed compiler warning mysys/my_handler.c: Fixed compiler warning Added missing enums in switch mysys/my_lib.c: Fixed compiler warning mysys/my_lread.c: Fixed compiler warning mysys/my_lwrite.c: Fixed compiler warning mysys/my_malloc.c: Fixed compiler warning mysys/my_pread.c: Fixed compiler warning mysys/my_read.c: Fixed compiler warning mysys/my_realloc.c: Fixed compiler warning mysys/my_seek.c: Fixed compiler warning mysys/my_write.c: Fixed compiler warning mysys/safemalloc.c: Fixed compiler warning mysys/thr_lock.c: Fixed compiler warning mysys/tree.c: Fixed compiler warning mysys/typelib.c: Fixed compiler warning ndb/include/logger/LogHandler.hpp: Changed SetErrorStr() to take const char* to remove compiler warnings (as many arguments to this are const strings) ndb/include/ndb_global.h.in: Added LINT_SET_PTR macro to be able to remove some compiler warnings ndb/include/util/InputStream.hpp: Fixed compiler warning ndb/include/util/OutputStream.hpp: Fixed compiler warning ndb/include/util/SimpleProperties.hpp: Fixed compiler warning ndb/src/common/debugger/EventLogger.cpp: remove if on 'signal' as this is a function pointer and is always true ndb/src/common/debugger/signaldata/BackupSignalData.cpp: Add missing enums ndb/src/common/logger/LogHandler.cpp: Changed SetErrorStr() to take const char* to remove compiler warnings (as many arguments to this are const strings) ndb/src/common/portlib/NdbMutex.c: Fixed compiler warning ndb/src/common/portlib/NdbThread.c: Fixed compiler warning ndb/src/common/transporter/Transporter.cpp: Swapped arguments to remove compiler warnings ndb/src/cw/cpcd/CPCD.hpp: Fixed compiler warning ndb/src/kernel/blocks/backup/Backup.cpp: Fixed compiler warning ndb/src/kernel/blocks/cmvmi/Cmvmi.cpp: Fixed compiler warning ndb/src/kernel/blocks/dbdict/Dbdict.cpp: Fixed compiler warning ndb/src/kernel/blocks/dbtux/DbtuxSearch.cpp: Fixed compiler warning ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp: Added missing enums ndb/src/kernel/blocks/qmgr/QmgrMain.cpp: Fixed compiler warning ndb/src/kernel/error/ErrorReporter.cpp: Fixed compiler warning ndb/src/kernel/error/ErrorReporter.hpp: Fixed compiler warning ndb/src/kernel/error/ndbd_exit_codes.c: Fixed compiler warning ndb/src/kernel/vm/TransporterCallback.cpp: Fixed compiler warning ndb/src/mgmapi/mgmapi.cpp: Fixed compiler warning ndb/src/mgmclient/CommandInterpreter.cpp: Fixed compiler warning ndb/src/mgmsrv/MgmtSrvr.cpp: Fixed compiler warning ndb/src/mgmsrv/Services.cpp: Fixed compiler warning ndb/src/ndbapi/ClusterMgr.cpp: Fixed compiler warning ndb/src/ndbapi/DictCache.cpp: Fixed compiler warning ndb/src/ndbapi/Ndb.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationDefine.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationExec.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationInt.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationSearch.cpp: Fixed compiler warning ndb/src/ndbapi/NdbTransaction.cpp: Fixed compiler warning ndb/src/ndbapi/Ndbif.cpp: Fixed compiler warning ndb/src/ndbapi/Ndbinit.cpp: Fixed compiler warning ndb/src/ndbapi/ndb_cluster_connection.cpp: Fixed compiler warning ndb/tools/drop_index.cpp: Fixed compiler warning ndb/tools/drop_tab.cpp: Fixed compiler warning ndb/tools/ndb_config.cpp: Fixed compiler warning regex/regexec.c: Fixed compiler warning server-tools/instance-manager/mysql_connection.cc: Fixed compiler warning sql/Makefile.am: Fix for bison 1.875, which adds an attribute statement that gcc 4.1.0 can't parse sql/filesort.cc: Fixed compiler warning sql/ha_archive.cc: Fixed compiler warning sql/ha_federated.cc: Fixed compiler warning sql/ha_federated.h: Fixed compiler warning sql/ha_innodb.cc: Fixed compiler warning sql/ha_myisam.cc: Fixed compiler warning sql/ha_myisammrg.cc: Fixed compiler warning sql/ha_ndbcluster.cc: Fixed compiler warning sql/handler.cc: Fixed compiler warning sql/item_cmpfunc.cc: Fixed compiler warning sql/item_subselect.cc: Fixed compiler warning sql/item_timefunc.cc: Fixed compiler warning sql/log_event.cc: Fixed compiler warning sql/mysqld.cc: Fixed compiler warning sql/net_serv.cc: Fixed compiler warning sql/opt_range.cc: Fixed compiler warning Formated DBUG statements to be as rest of code sql/slave.cc: Fixed compiler warning sql/sql_acl.cc: Fixed compiler warning sql/sql_cache.cc: Fixed compiler warning Fixed bug in query cache when used with DBUG traceing sql/sql_class.cc: Fixed compiler warning sql/sql_class.h: Fixed compiler warning sql/sql_delete.cc: Fixed compiler warning sql/sql_parse.cc: Fixed compiler warning Hack to fix my_sprintf() strings with %b sql/sql_prepare.cc: Fixed compiler warning Hack to fix my_sprintf() strings with %b sql/sql_repl.cc: Fixed compiler warning sql/sql_select.cc: Fixed compiler warning sql/sql_update.cc: Fixed compiler warning sql/sql_view.cc: Fixed compiler warning sql/strfunc.cc: Fixed compiler warning sql-common/client.c: Fixed compiler warning sql-common/my_time.c: Fixed compiler warning sql/table.cc: Fixed compiler warning sql/tztime.cc: Fixed compiler warning sql/unireg.cc: Fixed compiler warning strings/decimal.c: Fixed compiler warning tests/mysql_client_test.c: Fixed compiler warning vio/viosocket.c: Fixed compiler warning vio/viossl.c: Fixed compiler warning vio/viosslfactories.c: Fixed compiler warning
19 years ago
Make it possible to run mysql-test-run.pl with default test suite in different vardir. mysql-test/include/have_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/include/test_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/mysql-test-run.pl: Create variable $MYSQLTEST_VARDIR that points to the vardir Don't create a symlink from var/ to the physical vardir if it's somewhere else Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp" mysql-test/mysql-test-run.sh: Export MYSQLTEST_VARDIR, always pointing at mysql-test/var mysql-test/r/backup.result: Use MYSQLTEST_VARDIR mysql-test/r/blackhole.result: Use "../std_data_ln" to find std_data files mysql-test/r/loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqlbinlog.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqltest.result: Use MYSQLTEST_VARDIR mysql-test/r/outfile.result: Use MYSQLTEST_VARDIR mysql-test/r/query_cache.result: Add missing drop function mysql-test/r/rpl000001.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl000004.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_innodb.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_m.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_s.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddatalocal.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_log.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_misc_functions.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_replicate_do.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_rewrite_db.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_timezone.result: Use "../std_data_ln" to find std_data files mysql-test/r/symlink.result: Use MYSQLTEST_VARDIR mysql-test/r/trigger.result: Use "../std_data_ln" to find std_data files mysql-test/r/view.result: Use "../std_data_ln" to find std_data files mysql-test/r/warnings.result: Use "../std_data_ln" to find std_data files mysql-test/t/backup-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/backup.test: Use MYSQLTEST_VARDIR mysql-test/t/blackhole.test: Use "../std_data_ln" to find std_data files mysql-test/t/ctype_ucs_binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/im_daemon_life_cycle-im.opt: Use MYSQLTEST_VARDIR mysql-test/t/im_options_set.imtest: Use MYSQLTEST_VARDIR mysql-test/t/im_options_unset.imtest: Use MYSQLTEST_VARDIR mysql-test/t/loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/myisam.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqlbinlog.test: Use "../std_data_ln" to find std_data files mysql-test/t/mysqlbinlog2.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqldump.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqltest.test: Use MYSQLTEST_VARDIR mysql-test/t/ndb_autodiscover.test: Use MYSQLTEST_VARDIR mysql-test/t/outfile.test: Use MYSQLTEST_VARDIR mysql-test/t/query_cache.test: Add missing drop function mysql-test/t/repair.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000001.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000004.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000009.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000015-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl000017-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_EE_error.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_charset.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_drop_db.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_innodb.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_m.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_s.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddatalocal.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_log.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_misc_functions-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_misc_functions.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_replicate_do.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rewrite_db.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rotate_logs-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_rotate_logs.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_timezone.test: Use MYSQLTEST_VARDIR mysql-test/t/show_check.test: Use MYSQLTEST_VARDIR mysql-test/t/sp-destruct.test: Use MYSQLTEST_VARDIR mysql-test/t/symlink.test: Use MYSQLTEST_VARDIR mysql-test/t/temp_table-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/trigger-compat.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger-grant.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger.test: Use "../std_data_ln" to find std_data files mysql-test/t/type_varchar.test: Use MYSQLTEST_VARDIR mysql-test/t/user_var-binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/view.test: Use "../std_data_ln" to find std_data files mysql-test/t/warnings.test: Use "../std_data_ln" to find std_data files mysql-test/include/sourced.inc: New BitKeeper file ``mysql-test/include/sourced.inc'' mysql-test/include/sourced1.inc: New BitKeeper file ``mysql-test/include/sourced1.inc''
20 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Remove compiler warnings (Mostly in DBUG_PRINT() and unused arguments) Fixed bug in query cache when used with traceing (--with-debug) Fixed memory leak in mysqldump Removed warnings from mysqltest scripts (replaced -- with #) BitKeeper/etc/ignore: added mysql-test/r/*.warnings BUILD/SETUP.sh: Don't build with BDB as default client/client_priv.h: Added OPT_DEBUG_INFO client/mysqlbinlog.cc: Fixed compiler warning client/mysqldump.c: Removed compiler warnings Added option --debug-info to detect memory leaks Fixed memory leak Don't backup cluster replication tables (if used with 5.1) cmd-line-utils/readline/bind.c: Fixed compiler warning cmd-line-utils/readline/chardefs.h: Fixed compiler warning cmd-line-utils/readline/complete.c: Fixed compiler warning cmd-line-utils/readline/display.c: Fixed compiler warning cmd-line-utils/readline/histexpand.c: Fixed compiler warning cmd-line-utils/readline/input.c: Fixed compiler warning cmd-line-utils/readline/isearch.c: Fixed compiler warning cmd-line-utils/readline/kill.c: Fixed compiler warning cmd-line-utils/readline/macro.c: Fixed compiler warning cmd-line-utils/readline/misc.c: Fixed compiler warning cmd-line-utils/readline/nls.c: Fixed compiler warning cmd-line-utils/readline/readline.c: Fixed compiler warning cmd-line-utils/readline/rltty.c: Fixed compiler warning cmd-line-utils/readline/search.c: Fixed compiler warning cmd-line-utils/readline/terminal.c: Fixed compiler warning cmd-line-utils/readline/text.c: Fixed compiler warning cmd-line-utils/readline/tilde.c: Fixed compiler warning cmd-line-utils/readline/undo.c: Fixed compiler warning cmd-line-utils/readline/util.c: Fixed compiler warning cmd-line-utils/readline/vi_mode.c: Fixed compiler warning dbug/dbug_analyze.c: Fixed compiler warning extra/yassl/src/ssl.cpp: Fixed compiler warning extra/yassl/testsuite/testsuite.cpp: Fixed compiler warning heap/_check.c: Fixed compiler warning heap/hp_delete.c: Fixed compiler warning heap/hp_hash.c: Fixed compiler warning heap/hp_open.c: Fixed compiler warning heap/hp_rkey.c: Fixed compiler warning heap/hp_rrnd.c: Fixed compiler warning heap/hp_write.c: Fixed compiler warning libmysql/libmysql.c: Fixed compiler warning libmysqld/libmysqld.c: Fixed compiler warning myisam/mi_close.c: Fixed compiler warning myisam/mi_delete.c: Fixed compiler warning myisam/mi_dynrec.c: Fixed compiler warning myisam/mi_keycache.c: Fixed compiler warning myisam/mi_page.c: Fixed compiler warning myisam/mi_statrec.c: Fixed compiler warning myisam/mi_test2.c: Fixed compiler warning myisam/mi_write.c: Fixed compiler warning myisam/myisampack.c: Fixed compiler warning myisammrg/myrg_extra.c: Fixed compiler warning mysql-test/mysql-test-run.pl: Remove .reject, .progress, .log and .warnings flag at start cluster -> mysql database (for 5.1) mysql-test/include/federated.inc: Remove mysqltest warnings mysql-test/include/sp-vars.inc: Remove mysqltest warnings mysql-test/mysql-test-run.sh: Fix so that 'make test' works again Remove .reject, .progress .log and .warnings files at startup mysql-test/r/ctype_cp1250_ch.result: Drop used tables at startup mysql-test/t/create.test: Remove mysqltest warnings mysql-test/t/csv.test: Remove mysqltest warnings mysql-test/t/ctype_collate.test: Remove mysqltest warnings mysql-test/t/ctype_cp1250_ch.test: Drop used tables at startup mysql-test/t/ctype_ucs.test: Remove mysqltest warnings mysql-test/t/func_sapdb.test: Remove mysqltest warnings mysql-test/t/func_str.test: Remove mysqltest warnings mysql-test/t/grant.test: Remove mysqltest warnings mysql-test/t/greedy_optimizer.test: Remove mysqltest warnings mysql-test/t/group_min_max.test: Remove mysqltest warnings mysql-test/t/innodb.test: Remove mysqltest warnings mysql-test/t/join.test: Remove mysqltest warnings mysql-test/t/limit.test: Remove mysqltest warnings mysql-test/t/null.test: Remove mysqltest warnings mysql-test/t/select.test: Remove mysqltest warnings mysql-test/t/sp-prelocking.test: Remove mysqltest warnings mysql-test/t/strict.test: Remove mysqltest warnings mysql-test/t/subselect.test: Remove mysqltest warnings mysql-test/t/type_newdecimal.test: Remove mysqltest warnings mysql-test/t/view_grant.test: Remove mysqltest warnings mysys/default.c: Fixed compiler warning mysys/hash.c: Fixed compiler warning mysys/list.c: Fixed compiler warning mysys/mf_iocache.c: Fixed compiler warning mysys/mf_keycache.c: Fixed compiler warning mysys/mf_keycaches.c: Fixed compiler warning mysys/my_alloc.c: Fixed compiler warning mysys/my_dup.c: Fixed compiler warning mysys/my_fopen.c: Fixed compiler warning mysys/my_fstream.c: Fixed compiler warning mysys/my_getwd.c: Fixed compiler warning mysys/my_handler.c: Fixed compiler warning Added missing enums in switch mysys/my_lib.c: Fixed compiler warning mysys/my_lread.c: Fixed compiler warning mysys/my_lwrite.c: Fixed compiler warning mysys/my_malloc.c: Fixed compiler warning mysys/my_pread.c: Fixed compiler warning mysys/my_read.c: Fixed compiler warning mysys/my_realloc.c: Fixed compiler warning mysys/my_seek.c: Fixed compiler warning mysys/my_write.c: Fixed compiler warning mysys/safemalloc.c: Fixed compiler warning mysys/thr_lock.c: Fixed compiler warning mysys/tree.c: Fixed compiler warning mysys/typelib.c: Fixed compiler warning ndb/include/logger/LogHandler.hpp: Changed SetErrorStr() to take const char* to remove compiler warnings (as many arguments to this are const strings) ndb/include/ndb_global.h.in: Added LINT_SET_PTR macro to be able to remove some compiler warnings ndb/include/util/InputStream.hpp: Fixed compiler warning ndb/include/util/OutputStream.hpp: Fixed compiler warning ndb/include/util/SimpleProperties.hpp: Fixed compiler warning ndb/src/common/debugger/EventLogger.cpp: remove if on 'signal' as this is a function pointer and is always true ndb/src/common/debugger/signaldata/BackupSignalData.cpp: Add missing enums ndb/src/common/logger/LogHandler.cpp: Changed SetErrorStr() to take const char* to remove compiler warnings (as many arguments to this are const strings) ndb/src/common/portlib/NdbMutex.c: Fixed compiler warning ndb/src/common/portlib/NdbThread.c: Fixed compiler warning ndb/src/common/transporter/Transporter.cpp: Swapped arguments to remove compiler warnings ndb/src/cw/cpcd/CPCD.hpp: Fixed compiler warning ndb/src/kernel/blocks/backup/Backup.cpp: Fixed compiler warning ndb/src/kernel/blocks/cmvmi/Cmvmi.cpp: Fixed compiler warning ndb/src/kernel/blocks/dbdict/Dbdict.cpp: Fixed compiler warning ndb/src/kernel/blocks/dbtux/DbtuxSearch.cpp: Fixed compiler warning ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp: Added missing enums ndb/src/kernel/blocks/qmgr/QmgrMain.cpp: Fixed compiler warning ndb/src/kernel/error/ErrorReporter.cpp: Fixed compiler warning ndb/src/kernel/error/ErrorReporter.hpp: Fixed compiler warning ndb/src/kernel/error/ndbd_exit_codes.c: Fixed compiler warning ndb/src/kernel/vm/TransporterCallback.cpp: Fixed compiler warning ndb/src/mgmapi/mgmapi.cpp: Fixed compiler warning ndb/src/mgmclient/CommandInterpreter.cpp: Fixed compiler warning ndb/src/mgmsrv/MgmtSrvr.cpp: Fixed compiler warning ndb/src/mgmsrv/Services.cpp: Fixed compiler warning ndb/src/ndbapi/ClusterMgr.cpp: Fixed compiler warning ndb/src/ndbapi/DictCache.cpp: Fixed compiler warning ndb/src/ndbapi/Ndb.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationDefine.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationExec.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationInt.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationSearch.cpp: Fixed compiler warning ndb/src/ndbapi/NdbTransaction.cpp: Fixed compiler warning ndb/src/ndbapi/Ndbif.cpp: Fixed compiler warning ndb/src/ndbapi/Ndbinit.cpp: Fixed compiler warning ndb/src/ndbapi/ndb_cluster_connection.cpp: Fixed compiler warning ndb/tools/drop_index.cpp: Fixed compiler warning ndb/tools/drop_tab.cpp: Fixed compiler warning ndb/tools/ndb_config.cpp: Fixed compiler warning regex/regexec.c: Fixed compiler warning server-tools/instance-manager/mysql_connection.cc: Fixed compiler warning sql/Makefile.am: Fix for bison 1.875, which adds an attribute statement that gcc 4.1.0 can't parse sql/filesort.cc: Fixed compiler warning sql/ha_archive.cc: Fixed compiler warning sql/ha_federated.cc: Fixed compiler warning sql/ha_federated.h: Fixed compiler warning sql/ha_innodb.cc: Fixed compiler warning sql/ha_myisam.cc: Fixed compiler warning sql/ha_myisammrg.cc: Fixed compiler warning sql/ha_ndbcluster.cc: Fixed compiler warning sql/handler.cc: Fixed compiler warning sql/item_cmpfunc.cc: Fixed compiler warning sql/item_subselect.cc: Fixed compiler warning sql/item_timefunc.cc: Fixed compiler warning sql/log_event.cc: Fixed compiler warning sql/mysqld.cc: Fixed compiler warning sql/net_serv.cc: Fixed compiler warning sql/opt_range.cc: Fixed compiler warning Formated DBUG statements to be as rest of code sql/slave.cc: Fixed compiler warning sql/sql_acl.cc: Fixed compiler warning sql/sql_cache.cc: Fixed compiler warning Fixed bug in query cache when used with DBUG traceing sql/sql_class.cc: Fixed compiler warning sql/sql_class.h: Fixed compiler warning sql/sql_delete.cc: Fixed compiler warning sql/sql_parse.cc: Fixed compiler warning Hack to fix my_sprintf() strings with %b sql/sql_prepare.cc: Fixed compiler warning Hack to fix my_sprintf() strings with %b sql/sql_repl.cc: Fixed compiler warning sql/sql_select.cc: Fixed compiler warning sql/sql_update.cc: Fixed compiler warning sql/sql_view.cc: Fixed compiler warning sql/strfunc.cc: Fixed compiler warning sql-common/client.c: Fixed compiler warning sql-common/my_time.c: Fixed compiler warning sql/table.cc: Fixed compiler warning sql/tztime.cc: Fixed compiler warning sql/unireg.cc: Fixed compiler warning strings/decimal.c: Fixed compiler warning tests/mysql_client_test.c: Fixed compiler warning vio/viosocket.c: Fixed compiler warning vio/viossl.c: Fixed compiler warning vio/viosslfactories.c: Fixed compiler warning
19 years ago
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 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
21 years ago
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.
20 years ago
Bug#20166 mysql-test-run.pl does not test system privilege tables creation - Use mysql_system_tables.sql to create MySQL system tables in all places where we create them(mysql_install_db, mysql-test-run-pl and mysql_fix_privilege_tables.sql) BitKeeper/deleted/.del-init_db.sql: Rename: mysql-test/init_db.sql -> BitKeeper/deleted/.del-init_db.sql BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8: Rename: mysql-test/lib/init_db.sql -> BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8 BitKeeper/deleted/.del-mysql_create_system_tables.sh: Rename: scripts/mysql_create_system_tables.sh -> BitKeeper/deleted/.del-mysql_create_system_tables.sh BitKeeper/etc/ignore: Added scripts/mysql_fix_privilege_tables.sql to the ignore list mysql-test/Makefile.am: lib/init_db.sql has been removed mysql-test/mysql-test-run.pl: - Build var/tmp/bootstrap.sql from mysql_system_tables.sql, mysql_test_data_timezone.sql and fill_help_tables.sql and use it when bootsraping the system tables to use during test. mysql-test/r/create.result: Update result file mysql-test/r/derived.result: Update result file mysql-test/r/join.result: Update result file mysql-test/r/mysql_upgrade.result: Update result file mysql-test/r/sp-security.result: Update result file mysql-test/t/create.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/derived.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/grant2.test: Add anonymous users for part of thes that need it. mysql-test/t/grant_cache.test: Add anonymous users for part of thes that need it. mysql-test/t/init_connect.test: Add anonymous users for part of thes that need it. mysql-test/t/lock_multi.test: Add anonymous users for part of thes that need it. mysql-test/t/ndb_basic.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_index_ordered.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_multi.test: Connect as "root", blank user will take currently logged in username mysql-test/t/overflow.test: Connect as root - no anonymous users by default anymore mysql-test/t/rpl_temporary.test: Add anonymous users for the test mysql-test/t/xa.test: Connect as "root", blank user wil pick currently logged in user scripts/Makefile.am: Remove mysql_create_system_tables.sh Add mysql_system_tables.sql and mysql_test_data_timezone.sql Build mysql_fix_privilege_tables.sql from mysql_system_tables.sql and mysql_fix_privilege_tables.sql.in scripts/mysql_fix_privilege_tables.sh: Update message describing what the script does scripts/mysql_fix_privilege_tables.sql.in: Remove the part that creates system tables as that will be added to mysql_fix_privileg_tables.sql from mysql_system_tables.sql Change all comments to use # scripts/mysql_install_db.sh: Use mysql_system_tables.sql to create the MySQL system tables Update comments and indentation Add more descriptive comments about --windows switch Reduce number of hardcoded names for the SQL files the script looks for mysql-test/include/add_anonymous_users.inc: New BitKeeper file ``mysql-test/include/add_anonymous_users.inc'' mysql-test/include/delete_anonymous_users.inc: New BitKeeper file ``mysql-test/include/delete_anonymous_users.inc'' scripts/mysql_system_tables.sql: New BitKeeper file ``scripts/mysql_system_tables.sql'' scripts/mysql_test_data_timezone.sql: New BitKeeper file ``scripts/mysql_test_data_timezone.sql''
19 years ago
WL #3670: Compile-time option to remove GRANT-related startup options - configure --disable-grant-options defines DISABLE_GRANT_OPTIONS - configure.js/cmake also updated - if DISABLE_GRANT_OPTIONS is defined, mysqld no longer recognizes: --bootstrap --init-file --skip-grant-tables Scripts which rely on those three options are modified to check the environment for MYSQLD_BOOTSTRAP; it should be set to the full path of a mysqld which does handle those options. For example: $ export MYSQLD_BOOTSTRAP $ MYSQLD_BOOTSTRAP=/path/to/full/MySQL/bin/mysqld $ mysql_install_db $ make test configure.in: WL#3670 Add --disable-grant-options mysql-test/install_test_db.sh: Add MYSQLD_BOOTSTRAP env variable, to enable test suite to work even if mysqld does not accept --bootstrap or --skip-grant-tables. mysql-test/mysql-test-run.pl: Add MYSQLD_BOOTSTRAP env variable, to enable test suite to work even if mysqld does not accept --bootstrap or --skip-grant-tables. mysql-test/mysql_test_run_new.c: Mention need for MYSQLD_BOOTSTRAP in a comment, in case this needs to be used with a mysqld which does not accept the --bootstrap option. scripts/mysql_install_db.sh: Add MYSQLD_BOOTSTRAP env variable, to enable mysqld_install_db to work even if mysqld does not accept --bootstrap or --skip-grant-tables. sql/CMakeLists.txt: Add DISABLE_GRANT_OPTIONS define sql/mysqld.cc: Add DISABLE_GRANT_OPTIONS define, which removes the --bootstrap, --init-file, and --skip-grant-tables options win/README: Document the DISABLE_GRANT_OPTIONS define win/configure.js: Handle DISABLE_GRANT_OPTIONS
19 years ago
Bug#20166 mysql-test-run.pl does not test system privilege tables creation - Use mysql_system_tables.sql to create MySQL system tables in all places where we create them(mysql_install_db, mysql-test-run-pl and mysql_fix_privilege_tables.sql) BitKeeper/deleted/.del-init_db.sql: Rename: mysql-test/init_db.sql -> BitKeeper/deleted/.del-init_db.sql BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8: Rename: mysql-test/lib/init_db.sql -> BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8 BitKeeper/deleted/.del-mysql_create_system_tables.sh: Rename: scripts/mysql_create_system_tables.sh -> BitKeeper/deleted/.del-mysql_create_system_tables.sh BitKeeper/etc/ignore: Added scripts/mysql_fix_privilege_tables.sql to the ignore list mysql-test/Makefile.am: lib/init_db.sql has been removed mysql-test/mysql-test-run.pl: - Build var/tmp/bootstrap.sql from mysql_system_tables.sql, mysql_test_data_timezone.sql and fill_help_tables.sql and use it when bootsraping the system tables to use during test. mysql-test/r/create.result: Update result file mysql-test/r/derived.result: Update result file mysql-test/r/join.result: Update result file mysql-test/r/mysql_upgrade.result: Update result file mysql-test/r/sp-security.result: Update result file mysql-test/t/create.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/derived.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/grant2.test: Add anonymous users for part of thes that need it. mysql-test/t/grant_cache.test: Add anonymous users for part of thes that need it. mysql-test/t/init_connect.test: Add anonymous users for part of thes that need it. mysql-test/t/lock_multi.test: Add anonymous users for part of thes that need it. mysql-test/t/ndb_basic.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_index_ordered.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_multi.test: Connect as "root", blank user will take currently logged in username mysql-test/t/overflow.test: Connect as root - no anonymous users by default anymore mysql-test/t/rpl_temporary.test: Add anonymous users for the test mysql-test/t/xa.test: Connect as "root", blank user wil pick currently logged in user scripts/Makefile.am: Remove mysql_create_system_tables.sh Add mysql_system_tables.sql and mysql_test_data_timezone.sql Build mysql_fix_privilege_tables.sql from mysql_system_tables.sql and mysql_fix_privilege_tables.sql.in scripts/mysql_fix_privilege_tables.sh: Update message describing what the script does scripts/mysql_fix_privilege_tables.sql.in: Remove the part that creates system tables as that will be added to mysql_fix_privileg_tables.sql from mysql_system_tables.sql Change all comments to use # scripts/mysql_install_db.sh: Use mysql_system_tables.sql to create the MySQL system tables Update comments and indentation Add more descriptive comments about --windows switch Reduce number of hardcoded names for the SQL files the script looks for mysql-test/include/add_anonymous_users.inc: New BitKeeper file ``mysql-test/include/add_anonymous_users.inc'' mysql-test/include/delete_anonymous_users.inc: New BitKeeper file ``mysql-test/include/delete_anonymous_users.inc'' scripts/mysql_system_tables.sql: New BitKeeper file ``scripts/mysql_system_tables.sql'' scripts/mysql_test_data_timezone.sql: New BitKeeper file ``scripts/mysql_test_data_timezone.sql''
19 years ago
Bug#20166 mysql-test-run.pl does not test system privilege tables creation - Use mysql_system_tables.sql to create MySQL system tables in all places where we create them(mysql_install_db, mysql-test-run-pl and mysql_fix_privilege_tables.sql) BitKeeper/deleted/.del-init_db.sql: Rename: mysql-test/init_db.sql -> BitKeeper/deleted/.del-init_db.sql BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8: Rename: mysql-test/lib/init_db.sql -> BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8 BitKeeper/deleted/.del-mysql_create_system_tables.sh: Rename: scripts/mysql_create_system_tables.sh -> BitKeeper/deleted/.del-mysql_create_system_tables.sh BitKeeper/etc/ignore: Added scripts/mysql_fix_privilege_tables.sql to the ignore list mysql-test/Makefile.am: lib/init_db.sql has been removed mysql-test/mysql-test-run.pl: - Build var/tmp/bootstrap.sql from mysql_system_tables.sql, mysql_test_data_timezone.sql and fill_help_tables.sql and use it when bootsraping the system tables to use during test. mysql-test/r/create.result: Update result file mysql-test/r/derived.result: Update result file mysql-test/r/join.result: Update result file mysql-test/r/mysql_upgrade.result: Update result file mysql-test/r/sp-security.result: Update result file mysql-test/t/create.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/derived.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/grant2.test: Add anonymous users for part of thes that need it. mysql-test/t/grant_cache.test: Add anonymous users for part of thes that need it. mysql-test/t/init_connect.test: Add anonymous users for part of thes that need it. mysql-test/t/lock_multi.test: Add anonymous users for part of thes that need it. mysql-test/t/ndb_basic.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_index_ordered.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_multi.test: Connect as "root", blank user will take currently logged in username mysql-test/t/overflow.test: Connect as root - no anonymous users by default anymore mysql-test/t/rpl_temporary.test: Add anonymous users for the test mysql-test/t/xa.test: Connect as "root", blank user wil pick currently logged in user scripts/Makefile.am: Remove mysql_create_system_tables.sh Add mysql_system_tables.sql and mysql_test_data_timezone.sql Build mysql_fix_privilege_tables.sql from mysql_system_tables.sql and mysql_fix_privilege_tables.sql.in scripts/mysql_fix_privilege_tables.sh: Update message describing what the script does scripts/mysql_fix_privilege_tables.sql.in: Remove the part that creates system tables as that will be added to mysql_fix_privileg_tables.sql from mysql_system_tables.sql Change all comments to use # scripts/mysql_install_db.sh: Use mysql_system_tables.sql to create the MySQL system tables Update comments and indentation Add more descriptive comments about --windows switch Reduce number of hardcoded names for the SQL files the script looks for mysql-test/include/add_anonymous_users.inc: New BitKeeper file ``mysql-test/include/add_anonymous_users.inc'' mysql-test/include/delete_anonymous_users.inc: New BitKeeper file ``mysql-test/include/delete_anonymous_users.inc'' scripts/mysql_system_tables.sql: New BitKeeper file ``scripts/mysql_system_tables.sql'' scripts/mysql_test_data_timezone.sql: New BitKeeper file ``scripts/mysql_test_data_timezone.sql''
19 years ago
Bug#20166 mysql-test-run.pl does not test system privilege tables creation - Use mysql_system_tables.sql to create MySQL system tables in all places where we create them(mysql_install_db, mysql-test-run-pl and mysql_fix_privilege_tables.sql) BitKeeper/deleted/.del-init_db.sql: Rename: mysql-test/init_db.sql -> BitKeeper/deleted/.del-init_db.sql BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8: Rename: mysql-test/lib/init_db.sql -> BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8 BitKeeper/deleted/.del-mysql_create_system_tables.sh: Rename: scripts/mysql_create_system_tables.sh -> BitKeeper/deleted/.del-mysql_create_system_tables.sh BitKeeper/etc/ignore: Added scripts/mysql_fix_privilege_tables.sql to the ignore list mysql-test/Makefile.am: lib/init_db.sql has been removed mysql-test/mysql-test-run.pl: - Build var/tmp/bootstrap.sql from mysql_system_tables.sql, mysql_test_data_timezone.sql and fill_help_tables.sql and use it when bootsraping the system tables to use during test. mysql-test/r/create.result: Update result file mysql-test/r/derived.result: Update result file mysql-test/r/join.result: Update result file mysql-test/r/mysql_upgrade.result: Update result file mysql-test/r/sp-security.result: Update result file mysql-test/t/create.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/derived.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/grant2.test: Add anonymous users for part of thes that need it. mysql-test/t/grant_cache.test: Add anonymous users for part of thes that need it. mysql-test/t/init_connect.test: Add anonymous users for part of thes that need it. mysql-test/t/lock_multi.test: Add anonymous users for part of thes that need it. mysql-test/t/ndb_basic.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_index_ordered.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_multi.test: Connect as "root", blank user will take currently logged in username mysql-test/t/overflow.test: Connect as root - no anonymous users by default anymore mysql-test/t/rpl_temporary.test: Add anonymous users for the test mysql-test/t/xa.test: Connect as "root", blank user wil pick currently logged in user scripts/Makefile.am: Remove mysql_create_system_tables.sh Add mysql_system_tables.sql and mysql_test_data_timezone.sql Build mysql_fix_privilege_tables.sql from mysql_system_tables.sql and mysql_fix_privilege_tables.sql.in scripts/mysql_fix_privilege_tables.sh: Update message describing what the script does scripts/mysql_fix_privilege_tables.sql.in: Remove the part that creates system tables as that will be added to mysql_fix_privileg_tables.sql from mysql_system_tables.sql Change all comments to use # scripts/mysql_install_db.sh: Use mysql_system_tables.sql to create the MySQL system tables Update comments and indentation Add more descriptive comments about --windows switch Reduce number of hardcoded names for the SQL files the script looks for mysql-test/include/add_anonymous_users.inc: New BitKeeper file ``mysql-test/include/add_anonymous_users.inc'' mysql-test/include/delete_anonymous_users.inc: New BitKeeper file ``mysql-test/include/delete_anonymous_users.inc'' scripts/mysql_system_tables.sql: New BitKeeper file ``scripts/mysql_system_tables.sql'' scripts/mysql_test_data_timezone.sql: New BitKeeper file ``scripts/mysql_test_data_timezone.sql''
19 years ago
Bug#20166 mysql-test-run.pl does not test system privilege tables creation - Use mysql_system_tables.sql to create MySQL system tables in all places where we create them(mysql_install_db, mysql-test-run-pl and mysql_fix_privilege_tables.sql) BitKeeper/deleted/.del-init_db.sql: Rename: mysql-test/init_db.sql -> BitKeeper/deleted/.del-init_db.sql BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8: Rename: mysql-test/lib/init_db.sql -> BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8 BitKeeper/deleted/.del-mysql_create_system_tables.sh: Rename: scripts/mysql_create_system_tables.sh -> BitKeeper/deleted/.del-mysql_create_system_tables.sh BitKeeper/etc/ignore: Added scripts/mysql_fix_privilege_tables.sql to the ignore list mysql-test/Makefile.am: lib/init_db.sql has been removed mysql-test/mysql-test-run.pl: - Build var/tmp/bootstrap.sql from mysql_system_tables.sql, mysql_test_data_timezone.sql and fill_help_tables.sql and use it when bootsraping the system tables to use during test. mysql-test/r/create.result: Update result file mysql-test/r/derived.result: Update result file mysql-test/r/join.result: Update result file mysql-test/r/mysql_upgrade.result: Update result file mysql-test/r/sp-security.result: Update result file mysql-test/t/create.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/derived.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/grant2.test: Add anonymous users for part of thes that need it. mysql-test/t/grant_cache.test: Add anonymous users for part of thes that need it. mysql-test/t/init_connect.test: Add anonymous users for part of thes that need it. mysql-test/t/lock_multi.test: Add anonymous users for part of thes that need it. mysql-test/t/ndb_basic.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_index_ordered.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_multi.test: Connect as "root", blank user will take currently logged in username mysql-test/t/overflow.test: Connect as root - no anonymous users by default anymore mysql-test/t/rpl_temporary.test: Add anonymous users for the test mysql-test/t/xa.test: Connect as "root", blank user wil pick currently logged in user scripts/Makefile.am: Remove mysql_create_system_tables.sh Add mysql_system_tables.sql and mysql_test_data_timezone.sql Build mysql_fix_privilege_tables.sql from mysql_system_tables.sql and mysql_fix_privilege_tables.sql.in scripts/mysql_fix_privilege_tables.sh: Update message describing what the script does scripts/mysql_fix_privilege_tables.sql.in: Remove the part that creates system tables as that will be added to mysql_fix_privileg_tables.sql from mysql_system_tables.sql Change all comments to use # scripts/mysql_install_db.sh: Use mysql_system_tables.sql to create the MySQL system tables Update comments and indentation Add more descriptive comments about --windows switch Reduce number of hardcoded names for the SQL files the script looks for mysql-test/include/add_anonymous_users.inc: New BitKeeper file ``mysql-test/include/add_anonymous_users.inc'' mysql-test/include/delete_anonymous_users.inc: New BitKeeper file ``mysql-test/include/delete_anonymous_users.inc'' scripts/mysql_system_tables.sql: New BitKeeper file ``scripts/mysql_system_tables.sql'' scripts/mysql_test_data_timezone.sql: New BitKeeper file ``scripts/mysql_test_data_timezone.sql''
19 years ago
WL #3670: Compile-time option to remove GRANT-related startup options - configure --disable-grant-options defines DISABLE_GRANT_OPTIONS - configure.js/cmake also updated - if DISABLE_GRANT_OPTIONS is defined, mysqld no longer recognizes: --bootstrap --init-file --skip-grant-tables Scripts which rely on those three options are modified to check the environment for MYSQLD_BOOTSTRAP; it should be set to the full path of a mysqld which does handle those options. For example: $ export MYSQLD_BOOTSTRAP $ MYSQLD_BOOTSTRAP=/path/to/full/MySQL/bin/mysqld $ mysql_install_db $ make test configure.in: WL#3670 Add --disable-grant-options mysql-test/install_test_db.sh: Add MYSQLD_BOOTSTRAP env variable, to enable test suite to work even if mysqld does not accept --bootstrap or --skip-grant-tables. mysql-test/mysql-test-run.pl: Add MYSQLD_BOOTSTRAP env variable, to enable test suite to work even if mysqld does not accept --bootstrap or --skip-grant-tables. mysql-test/mysql_test_run_new.c: Mention need for MYSQLD_BOOTSTRAP in a comment, in case this needs to be used with a mysqld which does not accept the --bootstrap option. scripts/mysql_install_db.sh: Add MYSQLD_BOOTSTRAP env variable, to enable mysqld_install_db to work even if mysqld does not accept --bootstrap or --skip-grant-tables. sql/CMakeLists.txt: Add DISABLE_GRANT_OPTIONS define sql/mysqld.cc: Add DISABLE_GRANT_OPTIONS define, which removes the --bootstrap, --init-file, and --skip-grant-tables options win/README: Document the DISABLE_GRANT_OPTIONS define win/configure.js: Handle DISABLE_GRANT_OPTIONS
19 years ago
Bug#20166 mysql-test-run.pl does not test system privilege tables creation - Use mysql_system_tables.sql to create MySQL system tables in all places where we create them(mysql_install_db, mysql-test-run-pl and mysql_fix_privilege_tables.sql) BitKeeper/deleted/.del-init_db.sql: Rename: mysql-test/init_db.sql -> BitKeeper/deleted/.del-init_db.sql BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8: Rename: mysql-test/lib/init_db.sql -> BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8 BitKeeper/deleted/.del-mysql_create_system_tables.sh: Rename: scripts/mysql_create_system_tables.sh -> BitKeeper/deleted/.del-mysql_create_system_tables.sh BitKeeper/etc/ignore: Added scripts/mysql_fix_privilege_tables.sql to the ignore list mysql-test/Makefile.am: lib/init_db.sql has been removed mysql-test/mysql-test-run.pl: - Build var/tmp/bootstrap.sql from mysql_system_tables.sql, mysql_test_data_timezone.sql and fill_help_tables.sql and use it when bootsraping the system tables to use during test. mysql-test/r/create.result: Update result file mysql-test/r/derived.result: Update result file mysql-test/r/join.result: Update result file mysql-test/r/mysql_upgrade.result: Update result file mysql-test/r/sp-security.result: Update result file mysql-test/t/create.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/derived.test: Add user mysqltest_1 before trying to connect as that user - no anon users by default anymore mysql-test/t/grant2.test: Add anonymous users for part of thes that need it. mysql-test/t/grant_cache.test: Add anonymous users for part of thes that need it. mysql-test/t/init_connect.test: Add anonymous users for part of thes that need it. mysql-test/t/lock_multi.test: Add anonymous users for part of thes that need it. mysql-test/t/ndb_basic.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_index_ordered.test: Connect as "root", blank user will take currently logged in username mysql-test/t/ndb_multi.test: Connect as "root", blank user will take currently logged in username mysql-test/t/overflow.test: Connect as root - no anonymous users by default anymore mysql-test/t/rpl_temporary.test: Add anonymous users for the test mysql-test/t/xa.test: Connect as "root", blank user wil pick currently logged in user scripts/Makefile.am: Remove mysql_create_system_tables.sh Add mysql_system_tables.sql and mysql_test_data_timezone.sql Build mysql_fix_privilege_tables.sql from mysql_system_tables.sql and mysql_fix_privilege_tables.sql.in scripts/mysql_fix_privilege_tables.sh: Update message describing what the script does scripts/mysql_fix_privilege_tables.sql.in: Remove the part that creates system tables as that will be added to mysql_fix_privileg_tables.sql from mysql_system_tables.sql Change all comments to use # scripts/mysql_install_db.sh: Use mysql_system_tables.sql to create the MySQL system tables Update comments and indentation Add more descriptive comments about --windows switch Reduce number of hardcoded names for the SQL files the script looks for mysql-test/include/add_anonymous_users.inc: New BitKeeper file ``mysql-test/include/add_anonymous_users.inc'' mysql-test/include/delete_anonymous_users.inc: New BitKeeper file ``mysql-test/include/delete_anonymous_users.inc'' scripts/mysql_system_tables.sql: New BitKeeper file ``scripts/mysql_system_tables.sql'' scripts/mysql_test_data_timezone.sql: New BitKeeper file ``scripts/mysql_test_data_timezone.sql''
19 years ago
Partial fix for BUG#14106: IM: im_life_cycle and im_utils 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.
20 years ago
Partial fix for BUG#14106: IM: im_life_cycle and im_utils 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.
20 years ago
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 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
21 years ago
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 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
21 years ago
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 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
21 years ago
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 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
21 years ago
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 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
21 years ago
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 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
21 years ago
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 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
21 years ago
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 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
21 years ago
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 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
21 years ago
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 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
21 years ago
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 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
21 years ago
Bug#18628 mysql-test-run: security problem(part1) - Implement --secure-file-priv=<dir> option that limits "load_file", "LOAD DATA" and "SELECT .. INTO OUTFILE" to work with files in specified dir. - Use above option for mysqld in mysql-test-run.pl mysql-test/mysql-test-run.pl: Add usage of --secure-file-priv=vardir when starting mysqld mysql-test/r/loaddata.result: Update test result after adding test to check that secure-file-priv works for "load data" and "load_file" mysql-test/r/outfile.result: Update result mysql-test/r/query_cache.result: Can't load from outside of vardir anymore mysql-test/r/type_blob.result: Can't load from outside of vardir anymore mysql-test/t/loaddata.test: Update test result after adding test to check that secure-file-priv works for "load data" and "load_file" mysql-test/t/outfile.test: Update test result after adding test to check that secure-file-priv works for "SELECT .. INTO OUTFILE" mysql-test/t/query_cache.test: Can't load from outside of vardir anymore mysql-test/t/type_blob.test: Can't load from outside of vardir anymore sql/item_strfunc.cc: Check that the path "load_file" uses for the file is within what's specified with --secure-file-priv sql/mysql_priv.h: Add secure_file_priv sql/mysqld.cc: Add "--secure_file_priv" sql/set_var.cc: Add variable "secure_file_priv" to "show variables" sql/sql_class.cc: Check that the path "load_file" uses for the file is within what's specified with --secure-file-priv sql/sql_class.h: Fix spelling error sql/sql_load.cc: Check that the path "load_file" uses for the file is within what's specified with --secure-file-priv sql/share/errmsg.txt: Fix swedish error message for ER_OPTION_PREVENTS_STATMENT wich was hardcoded to --skip-grant-tables
19 years ago
Bug#18628 mysql-test-run: security problem(part1) - Implement --secure-file-priv=<dir> option that limits "load_file", "LOAD DATA" and "SELECT .. INTO OUTFILE" to work with files in specified dir. - Use above option for mysqld in mysql-test-run.pl mysql-test/mysql-test-run.pl: Add usage of --secure-file-priv=vardir when starting mysqld mysql-test/r/loaddata.result: Update test result after adding test to check that secure-file-priv works for "load data" and "load_file" mysql-test/r/outfile.result: Update result mysql-test/r/query_cache.result: Can't load from outside of vardir anymore mysql-test/r/type_blob.result: Can't load from outside of vardir anymore mysql-test/t/loaddata.test: Update test result after adding test to check that secure-file-priv works for "load data" and "load_file" mysql-test/t/outfile.test: Update test result after adding test to check that secure-file-priv works for "SELECT .. INTO OUTFILE" mysql-test/t/query_cache.test: Can't load from outside of vardir anymore mysql-test/t/type_blob.test: Can't load from outside of vardir anymore sql/item_strfunc.cc: Check that the path "load_file" uses for the file is within what's specified with --secure-file-priv sql/mysql_priv.h: Add secure_file_priv sql/mysqld.cc: Add "--secure_file_priv" sql/set_var.cc: Add variable "secure_file_priv" to "show variables" sql/sql_class.cc: Check that the path "load_file" uses for the file is within what's specified with --secure-file-priv sql/sql_class.h: Fix spelling error sql/sql_load.cc: Check that the path "load_file" uses for the file is within what's specified with --secure-file-priv sql/share/errmsg.txt: Fix swedish error message for ER_OPTION_PREVENTS_STATMENT wich was hardcoded to --skip-grant-tables
19 years ago
Make it possible to run mysql-test-run.pl with default test suite in different vardir. mysql-test/include/have_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/include/test_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/mysql-test-run.pl: Create variable $MYSQLTEST_VARDIR that points to the vardir Don't create a symlink from var/ to the physical vardir if it's somewhere else Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp" mysql-test/mysql-test-run.sh: Export MYSQLTEST_VARDIR, always pointing at mysql-test/var mysql-test/r/backup.result: Use MYSQLTEST_VARDIR mysql-test/r/blackhole.result: Use "../std_data_ln" to find std_data files mysql-test/r/loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqlbinlog.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqltest.result: Use MYSQLTEST_VARDIR mysql-test/r/outfile.result: Use MYSQLTEST_VARDIR mysql-test/r/query_cache.result: Add missing drop function mysql-test/r/rpl000001.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl000004.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_innodb.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_m.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_s.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddatalocal.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_log.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_misc_functions.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_replicate_do.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_rewrite_db.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_timezone.result: Use "../std_data_ln" to find std_data files mysql-test/r/symlink.result: Use MYSQLTEST_VARDIR mysql-test/r/trigger.result: Use "../std_data_ln" to find std_data files mysql-test/r/view.result: Use "../std_data_ln" to find std_data files mysql-test/r/warnings.result: Use "../std_data_ln" to find std_data files mysql-test/t/backup-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/backup.test: Use MYSQLTEST_VARDIR mysql-test/t/blackhole.test: Use "../std_data_ln" to find std_data files mysql-test/t/ctype_ucs_binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/im_daemon_life_cycle-im.opt: Use MYSQLTEST_VARDIR mysql-test/t/im_options_set.imtest: Use MYSQLTEST_VARDIR mysql-test/t/im_options_unset.imtest: Use MYSQLTEST_VARDIR mysql-test/t/loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/myisam.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqlbinlog.test: Use "../std_data_ln" to find std_data files mysql-test/t/mysqlbinlog2.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqldump.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqltest.test: Use MYSQLTEST_VARDIR mysql-test/t/ndb_autodiscover.test: Use MYSQLTEST_VARDIR mysql-test/t/outfile.test: Use MYSQLTEST_VARDIR mysql-test/t/query_cache.test: Add missing drop function mysql-test/t/repair.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000001.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000004.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000009.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000015-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl000017-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_EE_error.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_charset.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_drop_db.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_innodb.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_m.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_s.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddatalocal.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_log.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_misc_functions-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_misc_functions.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_replicate_do.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rewrite_db.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rotate_logs-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_rotate_logs.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_timezone.test: Use MYSQLTEST_VARDIR mysql-test/t/show_check.test: Use MYSQLTEST_VARDIR mysql-test/t/sp-destruct.test: Use MYSQLTEST_VARDIR mysql-test/t/symlink.test: Use MYSQLTEST_VARDIR mysql-test/t/temp_table-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/trigger-compat.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger-grant.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger.test: Use "../std_data_ln" to find std_data files mysql-test/t/type_varchar.test: Use MYSQLTEST_VARDIR mysql-test/t/user_var-binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/view.test: Use "../std_data_ln" to find std_data files mysql-test/t/warnings.test: Use "../std_data_ln" to find std_data files mysql-test/include/sourced.inc: New BitKeeper file ``mysql-test/include/sourced.inc'' mysql-test/include/sourced1.inc: New BitKeeper file ``mysql-test/include/sourced1.inc''
20 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
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 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
21 years ago
Remove compiler warnings (Mostly in DBUG_PRINT() and unused arguments) Fixed bug in query cache when used with traceing (--with-debug) Fixed memory leak in mysqldump Removed warnings from mysqltest scripts (replaced -- with #) BitKeeper/etc/ignore: added mysql-test/r/*.warnings BUILD/SETUP.sh: Don't build with BDB as default client/client_priv.h: Added OPT_DEBUG_INFO client/mysqlbinlog.cc: Fixed compiler warning client/mysqldump.c: Removed compiler warnings Added option --debug-info to detect memory leaks Fixed memory leak Don't backup cluster replication tables (if used with 5.1) cmd-line-utils/readline/bind.c: Fixed compiler warning cmd-line-utils/readline/chardefs.h: Fixed compiler warning cmd-line-utils/readline/complete.c: Fixed compiler warning cmd-line-utils/readline/display.c: Fixed compiler warning cmd-line-utils/readline/histexpand.c: Fixed compiler warning cmd-line-utils/readline/input.c: Fixed compiler warning cmd-line-utils/readline/isearch.c: Fixed compiler warning cmd-line-utils/readline/kill.c: Fixed compiler warning cmd-line-utils/readline/macro.c: Fixed compiler warning cmd-line-utils/readline/misc.c: Fixed compiler warning cmd-line-utils/readline/nls.c: Fixed compiler warning cmd-line-utils/readline/readline.c: Fixed compiler warning cmd-line-utils/readline/rltty.c: Fixed compiler warning cmd-line-utils/readline/search.c: Fixed compiler warning cmd-line-utils/readline/terminal.c: Fixed compiler warning cmd-line-utils/readline/text.c: Fixed compiler warning cmd-line-utils/readline/tilde.c: Fixed compiler warning cmd-line-utils/readline/undo.c: Fixed compiler warning cmd-line-utils/readline/util.c: Fixed compiler warning cmd-line-utils/readline/vi_mode.c: Fixed compiler warning dbug/dbug_analyze.c: Fixed compiler warning extra/yassl/src/ssl.cpp: Fixed compiler warning extra/yassl/testsuite/testsuite.cpp: Fixed compiler warning heap/_check.c: Fixed compiler warning heap/hp_delete.c: Fixed compiler warning heap/hp_hash.c: Fixed compiler warning heap/hp_open.c: Fixed compiler warning heap/hp_rkey.c: Fixed compiler warning heap/hp_rrnd.c: Fixed compiler warning heap/hp_write.c: Fixed compiler warning libmysql/libmysql.c: Fixed compiler warning libmysqld/libmysqld.c: Fixed compiler warning myisam/mi_close.c: Fixed compiler warning myisam/mi_delete.c: Fixed compiler warning myisam/mi_dynrec.c: Fixed compiler warning myisam/mi_keycache.c: Fixed compiler warning myisam/mi_page.c: Fixed compiler warning myisam/mi_statrec.c: Fixed compiler warning myisam/mi_test2.c: Fixed compiler warning myisam/mi_write.c: Fixed compiler warning myisam/myisampack.c: Fixed compiler warning myisammrg/myrg_extra.c: Fixed compiler warning mysql-test/mysql-test-run.pl: Remove .reject, .progress, .log and .warnings flag at start cluster -> mysql database (for 5.1) mysql-test/include/federated.inc: Remove mysqltest warnings mysql-test/include/sp-vars.inc: Remove mysqltest warnings mysql-test/mysql-test-run.sh: Fix so that 'make test' works again Remove .reject, .progress .log and .warnings files at startup mysql-test/r/ctype_cp1250_ch.result: Drop used tables at startup mysql-test/t/create.test: Remove mysqltest warnings mysql-test/t/csv.test: Remove mysqltest warnings mysql-test/t/ctype_collate.test: Remove mysqltest warnings mysql-test/t/ctype_cp1250_ch.test: Drop used tables at startup mysql-test/t/ctype_ucs.test: Remove mysqltest warnings mysql-test/t/func_sapdb.test: Remove mysqltest warnings mysql-test/t/func_str.test: Remove mysqltest warnings mysql-test/t/grant.test: Remove mysqltest warnings mysql-test/t/greedy_optimizer.test: Remove mysqltest warnings mysql-test/t/group_min_max.test: Remove mysqltest warnings mysql-test/t/innodb.test: Remove mysqltest warnings mysql-test/t/join.test: Remove mysqltest warnings mysql-test/t/limit.test: Remove mysqltest warnings mysql-test/t/null.test: Remove mysqltest warnings mysql-test/t/select.test: Remove mysqltest warnings mysql-test/t/sp-prelocking.test: Remove mysqltest warnings mysql-test/t/strict.test: Remove mysqltest warnings mysql-test/t/subselect.test: Remove mysqltest warnings mysql-test/t/type_newdecimal.test: Remove mysqltest warnings mysql-test/t/view_grant.test: Remove mysqltest warnings mysys/default.c: Fixed compiler warning mysys/hash.c: Fixed compiler warning mysys/list.c: Fixed compiler warning mysys/mf_iocache.c: Fixed compiler warning mysys/mf_keycache.c: Fixed compiler warning mysys/mf_keycaches.c: Fixed compiler warning mysys/my_alloc.c: Fixed compiler warning mysys/my_dup.c: Fixed compiler warning mysys/my_fopen.c: Fixed compiler warning mysys/my_fstream.c: Fixed compiler warning mysys/my_getwd.c: Fixed compiler warning mysys/my_handler.c: Fixed compiler warning Added missing enums in switch mysys/my_lib.c: Fixed compiler warning mysys/my_lread.c: Fixed compiler warning mysys/my_lwrite.c: Fixed compiler warning mysys/my_malloc.c: Fixed compiler warning mysys/my_pread.c: Fixed compiler warning mysys/my_read.c: Fixed compiler warning mysys/my_realloc.c: Fixed compiler warning mysys/my_seek.c: Fixed compiler warning mysys/my_write.c: Fixed compiler warning mysys/safemalloc.c: Fixed compiler warning mysys/thr_lock.c: Fixed compiler warning mysys/tree.c: Fixed compiler warning mysys/typelib.c: Fixed compiler warning ndb/include/logger/LogHandler.hpp: Changed SetErrorStr() to take const char* to remove compiler warnings (as many arguments to this are const strings) ndb/include/ndb_global.h.in: Added LINT_SET_PTR macro to be able to remove some compiler warnings ndb/include/util/InputStream.hpp: Fixed compiler warning ndb/include/util/OutputStream.hpp: Fixed compiler warning ndb/include/util/SimpleProperties.hpp: Fixed compiler warning ndb/src/common/debugger/EventLogger.cpp: remove if on 'signal' as this is a function pointer and is always true ndb/src/common/debugger/signaldata/BackupSignalData.cpp: Add missing enums ndb/src/common/logger/LogHandler.cpp: Changed SetErrorStr() to take const char* to remove compiler warnings (as many arguments to this are const strings) ndb/src/common/portlib/NdbMutex.c: Fixed compiler warning ndb/src/common/portlib/NdbThread.c: Fixed compiler warning ndb/src/common/transporter/Transporter.cpp: Swapped arguments to remove compiler warnings ndb/src/cw/cpcd/CPCD.hpp: Fixed compiler warning ndb/src/kernel/blocks/backup/Backup.cpp: Fixed compiler warning ndb/src/kernel/blocks/cmvmi/Cmvmi.cpp: Fixed compiler warning ndb/src/kernel/blocks/dbdict/Dbdict.cpp: Fixed compiler warning ndb/src/kernel/blocks/dbtux/DbtuxSearch.cpp: Fixed compiler warning ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp: Added missing enums ndb/src/kernel/blocks/qmgr/QmgrMain.cpp: Fixed compiler warning ndb/src/kernel/error/ErrorReporter.cpp: Fixed compiler warning ndb/src/kernel/error/ErrorReporter.hpp: Fixed compiler warning ndb/src/kernel/error/ndbd_exit_codes.c: Fixed compiler warning ndb/src/kernel/vm/TransporterCallback.cpp: Fixed compiler warning ndb/src/mgmapi/mgmapi.cpp: Fixed compiler warning ndb/src/mgmclient/CommandInterpreter.cpp: Fixed compiler warning ndb/src/mgmsrv/MgmtSrvr.cpp: Fixed compiler warning ndb/src/mgmsrv/Services.cpp: Fixed compiler warning ndb/src/ndbapi/ClusterMgr.cpp: Fixed compiler warning ndb/src/ndbapi/DictCache.cpp: Fixed compiler warning ndb/src/ndbapi/Ndb.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationDefine.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationExec.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationInt.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationSearch.cpp: Fixed compiler warning ndb/src/ndbapi/NdbTransaction.cpp: Fixed compiler warning ndb/src/ndbapi/Ndbif.cpp: Fixed compiler warning ndb/src/ndbapi/Ndbinit.cpp: Fixed compiler warning ndb/src/ndbapi/ndb_cluster_connection.cpp: Fixed compiler warning ndb/tools/drop_index.cpp: Fixed compiler warning ndb/tools/drop_tab.cpp: Fixed compiler warning ndb/tools/ndb_config.cpp: Fixed compiler warning regex/regexec.c: Fixed compiler warning server-tools/instance-manager/mysql_connection.cc: Fixed compiler warning sql/Makefile.am: Fix for bison 1.875, which adds an attribute statement that gcc 4.1.0 can't parse sql/filesort.cc: Fixed compiler warning sql/ha_archive.cc: Fixed compiler warning sql/ha_federated.cc: Fixed compiler warning sql/ha_federated.h: Fixed compiler warning sql/ha_innodb.cc: Fixed compiler warning sql/ha_myisam.cc: Fixed compiler warning sql/ha_myisammrg.cc: Fixed compiler warning sql/ha_ndbcluster.cc: Fixed compiler warning sql/handler.cc: Fixed compiler warning sql/item_cmpfunc.cc: Fixed compiler warning sql/item_subselect.cc: Fixed compiler warning sql/item_timefunc.cc: Fixed compiler warning sql/log_event.cc: Fixed compiler warning sql/mysqld.cc: Fixed compiler warning sql/net_serv.cc: Fixed compiler warning sql/opt_range.cc: Fixed compiler warning Formated DBUG statements to be as rest of code sql/slave.cc: Fixed compiler warning sql/sql_acl.cc: Fixed compiler warning sql/sql_cache.cc: Fixed compiler warning Fixed bug in query cache when used with DBUG traceing sql/sql_class.cc: Fixed compiler warning sql/sql_class.h: Fixed compiler warning sql/sql_delete.cc: Fixed compiler warning sql/sql_parse.cc: Fixed compiler warning Hack to fix my_sprintf() strings with %b sql/sql_prepare.cc: Fixed compiler warning Hack to fix my_sprintf() strings with %b sql/sql_repl.cc: Fixed compiler warning sql/sql_select.cc: Fixed compiler warning sql/sql_update.cc: Fixed compiler warning sql/sql_view.cc: Fixed compiler warning sql/strfunc.cc: Fixed compiler warning sql-common/client.c: Fixed compiler warning sql-common/my_time.c: Fixed compiler warning sql/table.cc: Fixed compiler warning sql/tztime.cc: Fixed compiler warning sql/unireg.cc: Fixed compiler warning strings/decimal.c: Fixed compiler warning tests/mysql_client_test.c: Fixed compiler warning vio/viosocket.c: Fixed compiler warning vio/viossl.c: Fixed compiler warning vio/viosslfactories.c: Fixed compiler warning
19 years ago
Remove compiler warnings (Mostly in DBUG_PRINT() and unused arguments) Fixed bug in query cache when used with traceing (--with-debug) Fixed memory leak in mysqldump Removed warnings from mysqltest scripts (replaced -- with #) BitKeeper/etc/ignore: added mysql-test/r/*.warnings BUILD/SETUP.sh: Don't build with BDB as default client/client_priv.h: Added OPT_DEBUG_INFO client/mysqlbinlog.cc: Fixed compiler warning client/mysqldump.c: Removed compiler warnings Added option --debug-info to detect memory leaks Fixed memory leak Don't backup cluster replication tables (if used with 5.1) cmd-line-utils/readline/bind.c: Fixed compiler warning cmd-line-utils/readline/chardefs.h: Fixed compiler warning cmd-line-utils/readline/complete.c: Fixed compiler warning cmd-line-utils/readline/display.c: Fixed compiler warning cmd-line-utils/readline/histexpand.c: Fixed compiler warning cmd-line-utils/readline/input.c: Fixed compiler warning cmd-line-utils/readline/isearch.c: Fixed compiler warning cmd-line-utils/readline/kill.c: Fixed compiler warning cmd-line-utils/readline/macro.c: Fixed compiler warning cmd-line-utils/readline/misc.c: Fixed compiler warning cmd-line-utils/readline/nls.c: Fixed compiler warning cmd-line-utils/readline/readline.c: Fixed compiler warning cmd-line-utils/readline/rltty.c: Fixed compiler warning cmd-line-utils/readline/search.c: Fixed compiler warning cmd-line-utils/readline/terminal.c: Fixed compiler warning cmd-line-utils/readline/text.c: Fixed compiler warning cmd-line-utils/readline/tilde.c: Fixed compiler warning cmd-line-utils/readline/undo.c: Fixed compiler warning cmd-line-utils/readline/util.c: Fixed compiler warning cmd-line-utils/readline/vi_mode.c: Fixed compiler warning dbug/dbug_analyze.c: Fixed compiler warning extra/yassl/src/ssl.cpp: Fixed compiler warning extra/yassl/testsuite/testsuite.cpp: Fixed compiler warning heap/_check.c: Fixed compiler warning heap/hp_delete.c: Fixed compiler warning heap/hp_hash.c: Fixed compiler warning heap/hp_open.c: Fixed compiler warning heap/hp_rkey.c: Fixed compiler warning heap/hp_rrnd.c: Fixed compiler warning heap/hp_write.c: Fixed compiler warning libmysql/libmysql.c: Fixed compiler warning libmysqld/libmysqld.c: Fixed compiler warning myisam/mi_close.c: Fixed compiler warning myisam/mi_delete.c: Fixed compiler warning myisam/mi_dynrec.c: Fixed compiler warning myisam/mi_keycache.c: Fixed compiler warning myisam/mi_page.c: Fixed compiler warning myisam/mi_statrec.c: Fixed compiler warning myisam/mi_test2.c: Fixed compiler warning myisam/mi_write.c: Fixed compiler warning myisam/myisampack.c: Fixed compiler warning myisammrg/myrg_extra.c: Fixed compiler warning mysql-test/mysql-test-run.pl: Remove .reject, .progress, .log and .warnings flag at start cluster -> mysql database (for 5.1) mysql-test/include/federated.inc: Remove mysqltest warnings mysql-test/include/sp-vars.inc: Remove mysqltest warnings mysql-test/mysql-test-run.sh: Fix so that 'make test' works again Remove .reject, .progress .log and .warnings files at startup mysql-test/r/ctype_cp1250_ch.result: Drop used tables at startup mysql-test/t/create.test: Remove mysqltest warnings mysql-test/t/csv.test: Remove mysqltest warnings mysql-test/t/ctype_collate.test: Remove mysqltest warnings mysql-test/t/ctype_cp1250_ch.test: Drop used tables at startup mysql-test/t/ctype_ucs.test: Remove mysqltest warnings mysql-test/t/func_sapdb.test: Remove mysqltest warnings mysql-test/t/func_str.test: Remove mysqltest warnings mysql-test/t/grant.test: Remove mysqltest warnings mysql-test/t/greedy_optimizer.test: Remove mysqltest warnings mysql-test/t/group_min_max.test: Remove mysqltest warnings mysql-test/t/innodb.test: Remove mysqltest warnings mysql-test/t/join.test: Remove mysqltest warnings mysql-test/t/limit.test: Remove mysqltest warnings mysql-test/t/null.test: Remove mysqltest warnings mysql-test/t/select.test: Remove mysqltest warnings mysql-test/t/sp-prelocking.test: Remove mysqltest warnings mysql-test/t/strict.test: Remove mysqltest warnings mysql-test/t/subselect.test: Remove mysqltest warnings mysql-test/t/type_newdecimal.test: Remove mysqltest warnings mysql-test/t/view_grant.test: Remove mysqltest warnings mysys/default.c: Fixed compiler warning mysys/hash.c: Fixed compiler warning mysys/list.c: Fixed compiler warning mysys/mf_iocache.c: Fixed compiler warning mysys/mf_keycache.c: Fixed compiler warning mysys/mf_keycaches.c: Fixed compiler warning mysys/my_alloc.c: Fixed compiler warning mysys/my_dup.c: Fixed compiler warning mysys/my_fopen.c: Fixed compiler warning mysys/my_fstream.c: Fixed compiler warning mysys/my_getwd.c: Fixed compiler warning mysys/my_handler.c: Fixed compiler warning Added missing enums in switch mysys/my_lib.c: Fixed compiler warning mysys/my_lread.c: Fixed compiler warning mysys/my_lwrite.c: Fixed compiler warning mysys/my_malloc.c: Fixed compiler warning mysys/my_pread.c: Fixed compiler warning mysys/my_read.c: Fixed compiler warning mysys/my_realloc.c: Fixed compiler warning mysys/my_seek.c: Fixed compiler warning mysys/my_write.c: Fixed compiler warning mysys/safemalloc.c: Fixed compiler warning mysys/thr_lock.c: Fixed compiler warning mysys/tree.c: Fixed compiler warning mysys/typelib.c: Fixed compiler warning ndb/include/logger/LogHandler.hpp: Changed SetErrorStr() to take const char* to remove compiler warnings (as many arguments to this are const strings) ndb/include/ndb_global.h.in: Added LINT_SET_PTR macro to be able to remove some compiler warnings ndb/include/util/InputStream.hpp: Fixed compiler warning ndb/include/util/OutputStream.hpp: Fixed compiler warning ndb/include/util/SimpleProperties.hpp: Fixed compiler warning ndb/src/common/debugger/EventLogger.cpp: remove if on 'signal' as this is a function pointer and is always true ndb/src/common/debugger/signaldata/BackupSignalData.cpp: Add missing enums ndb/src/common/logger/LogHandler.cpp: Changed SetErrorStr() to take const char* to remove compiler warnings (as many arguments to this are const strings) ndb/src/common/portlib/NdbMutex.c: Fixed compiler warning ndb/src/common/portlib/NdbThread.c: Fixed compiler warning ndb/src/common/transporter/Transporter.cpp: Swapped arguments to remove compiler warnings ndb/src/cw/cpcd/CPCD.hpp: Fixed compiler warning ndb/src/kernel/blocks/backup/Backup.cpp: Fixed compiler warning ndb/src/kernel/blocks/cmvmi/Cmvmi.cpp: Fixed compiler warning ndb/src/kernel/blocks/dbdict/Dbdict.cpp: Fixed compiler warning ndb/src/kernel/blocks/dbtux/DbtuxSearch.cpp: Fixed compiler warning ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp: Added missing enums ndb/src/kernel/blocks/qmgr/QmgrMain.cpp: Fixed compiler warning ndb/src/kernel/error/ErrorReporter.cpp: Fixed compiler warning ndb/src/kernel/error/ErrorReporter.hpp: Fixed compiler warning ndb/src/kernel/error/ndbd_exit_codes.c: Fixed compiler warning ndb/src/kernel/vm/TransporterCallback.cpp: Fixed compiler warning ndb/src/mgmapi/mgmapi.cpp: Fixed compiler warning ndb/src/mgmclient/CommandInterpreter.cpp: Fixed compiler warning ndb/src/mgmsrv/MgmtSrvr.cpp: Fixed compiler warning ndb/src/mgmsrv/Services.cpp: Fixed compiler warning ndb/src/ndbapi/ClusterMgr.cpp: Fixed compiler warning ndb/src/ndbapi/DictCache.cpp: Fixed compiler warning ndb/src/ndbapi/Ndb.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationDefine.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationExec.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationInt.cpp: Fixed compiler warning ndb/src/ndbapi/NdbOperationSearch.cpp: Fixed compiler warning ndb/src/ndbapi/NdbTransaction.cpp: Fixed compiler warning ndb/src/ndbapi/Ndbif.cpp: Fixed compiler warning ndb/src/ndbapi/Ndbinit.cpp: Fixed compiler warning ndb/src/ndbapi/ndb_cluster_connection.cpp: Fixed compiler warning ndb/tools/drop_index.cpp: Fixed compiler warning ndb/tools/drop_tab.cpp: Fixed compiler warning ndb/tools/ndb_config.cpp: Fixed compiler warning regex/regexec.c: Fixed compiler warning server-tools/instance-manager/mysql_connection.cc: Fixed compiler warning sql/Makefile.am: Fix for bison 1.875, which adds an attribute statement that gcc 4.1.0 can't parse sql/filesort.cc: Fixed compiler warning sql/ha_archive.cc: Fixed compiler warning sql/ha_federated.cc: Fixed compiler warning sql/ha_federated.h: Fixed compiler warning sql/ha_innodb.cc: Fixed compiler warning sql/ha_myisam.cc: Fixed compiler warning sql/ha_myisammrg.cc: Fixed compiler warning sql/ha_ndbcluster.cc: Fixed compiler warning sql/handler.cc: Fixed compiler warning sql/item_cmpfunc.cc: Fixed compiler warning sql/item_subselect.cc: Fixed compiler warning sql/item_timefunc.cc: Fixed compiler warning sql/log_event.cc: Fixed compiler warning sql/mysqld.cc: Fixed compiler warning sql/net_serv.cc: Fixed compiler warning sql/opt_range.cc: Fixed compiler warning Formated DBUG statements to be as rest of code sql/slave.cc: Fixed compiler warning sql/sql_acl.cc: Fixed compiler warning sql/sql_cache.cc: Fixed compiler warning Fixed bug in query cache when used with DBUG traceing sql/sql_class.cc: Fixed compiler warning sql/sql_class.h: Fixed compiler warning sql/sql_delete.cc: Fixed compiler warning sql/sql_parse.cc: Fixed compiler warning Hack to fix my_sprintf() strings with %b sql/sql_prepare.cc: Fixed compiler warning Hack to fix my_sprintf() strings with %b sql/sql_repl.cc: Fixed compiler warning sql/sql_select.cc: Fixed compiler warning sql/sql_update.cc: Fixed compiler warning sql/sql_view.cc: Fixed compiler warning sql/strfunc.cc: Fixed compiler warning sql-common/client.c: Fixed compiler warning sql-common/my_time.c: Fixed compiler warning sql/table.cc: Fixed compiler warning sql/tztime.cc: Fixed compiler warning sql/unireg.cc: Fixed compiler warning strings/decimal.c: Fixed compiler warning tests/mysql_client_test.c: Fixed compiler warning vio/viosocket.c: Fixed compiler warning vio/viossl.c: Fixed compiler warning vio/viosslfactories.c: Fixed compiler warning
19 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
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 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
21 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
BUG#11316 mysqltest, problems when assigning value with '#' to $variable - Fixed problem, only detect comment if the # is on start of line AND starting line of the current command. - Wrote tests for most of the mysqltest commands, added stricter checking of correct syntax. client/mysqltest.c: Updated mysql test to do stricter checking of syntax. For example when the number of arguments to a command is known, everything else is "junk" => die. Better checking of argument types. Added better debug printouts. Added improved printouts when wrong syntax is detected. Fix two bugs where mysqltest could not detect end of comamnd properly, as described in bug#11316 Fix segfault when performing too many source commands. Fix segfault when doing too many while loop levels. Add printout of line number in die Remove lineno and \n in all strings passed to die function. Decrese BLOCK_STACK_DEPTH from 32 to 16, does any test use more than 1 level? mysql-test/mysql-test-run.pl: export MYSQL_TEST environment variable, used from msyqltest.test mysql-test/mysql-test-run.sh: export MYSQL_TEST environment variable, used from msyqltest.test mysql-test/r/mysqltest.result: Updated test results mysql-test/r/rpl_flush_log_loop.result: Updated test result. Approved by lars mysql-test/t/innodb-deadlock.test: Correct wrong syntax Superfluos ; mysql-test/t/innodb-lock.test: Correct wrong syntax Superfluos ; mysql-test/t/mysqltest.test: Add several new tests for mysqltest. Foxus on detecting wrong syntax in test files. Use exec with expected error to execute test scripts that will kill mysqltest Change some negative test that were previously commented out to use the above method. mysql-test/t/ndb_autodiscover2.test: Correct wrong syntax Superfluos ; mysql-test/t/rpl_change_master.test: Correct wrong syntax Superfluos ; mysql-test/t/rpl_deadlock.test: Correct wrong syntax Superfluos ; mysql-test/t/rpl_drop_temp.test: Correct wrong syntax Superfluos ; mysql-test/t/rpl_flush_log_loop.test: Fix after detecting wrong syntax, missing ; Discussed with lars. mysql-test/t/rpl_insert_id.test: Missing ; mysql-test/t/rpl_rotate_logs.test: Correct wrong syntax Superfluos ; mysql-test/t/rpl_until.test: Missing delimiter mysql-test/include/mysqltest_while.inc: New file to test too many while levels
21 years ago
BUG#11316 mysqltest, problems when assigning value with '#' to $variable - Fixed problem, only detect comment if the # is on start of line AND starting line of the current command. - Wrote tests for most of the mysqltest commands, added stricter checking of correct syntax. client/mysqltest.c: Updated mysql test to do stricter checking of syntax. For example when the number of arguments to a command is known, everything else is "junk" => die. Better checking of argument types. Added better debug printouts. Added improved printouts when wrong syntax is detected. Fix two bugs where mysqltest could not detect end of comamnd properly, as described in bug#11316 Fix segfault when performing too many source commands. Fix segfault when doing too many while loop levels. Add printout of line number in die Remove lineno and \n in all strings passed to die function. Decrese BLOCK_STACK_DEPTH from 32 to 16, does any test use more than 1 level? mysql-test/mysql-test-run.pl: export MYSQL_TEST environment variable, used from msyqltest.test mysql-test/mysql-test-run.sh: export MYSQL_TEST environment variable, used from msyqltest.test mysql-test/r/mysqltest.result: Updated test results mysql-test/r/rpl_flush_log_loop.result: Updated test result. Approved by lars mysql-test/t/innodb-deadlock.test: Correct wrong syntax Superfluos ; mysql-test/t/innodb-lock.test: Correct wrong syntax Superfluos ; mysql-test/t/mysqltest.test: Add several new tests for mysqltest. Foxus on detecting wrong syntax in test files. Use exec with expected error to execute test scripts that will kill mysqltest Change some negative test that were previously commented out to use the above method. mysql-test/t/ndb_autodiscover2.test: Correct wrong syntax Superfluos ; mysql-test/t/rpl_change_master.test: Correct wrong syntax Superfluos ; mysql-test/t/rpl_deadlock.test: Correct wrong syntax Superfluos ; mysql-test/t/rpl_drop_temp.test: Correct wrong syntax Superfluos ; mysql-test/t/rpl_flush_log_loop.test: Fix after detecting wrong syntax, missing ; Discussed with lars. mysql-test/t/rpl_insert_id.test: Missing ; mysql-test/t/rpl_rotate_logs.test: Correct wrong syntax Superfluos ; mysql-test/t/rpl_until.test: Missing delimiter mysql-test/include/mysqltest_while.inc: New file to test too many while levels
21 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
Make it possible to run mysql-test-run.pl with default test suite in different vardir. mysql-test/include/have_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/include/test_outfile.inc: Use MYSQLTEST_VARDIR mysql-test/mysql-test-run.pl: Create variable $MYSQLTEST_VARDIR that points to the vardir Don't create a symlink from var/ to the physical vardir if it's somewhere else Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp" mysql-test/mysql-test-run.sh: Export MYSQLTEST_VARDIR, always pointing at mysql-test/var mysql-test/r/backup.result: Use MYSQLTEST_VARDIR mysql-test/r/blackhole.result: Use "../std_data_ln" to find std_data files mysql-test/r/loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqlbinlog.result: Use "../std_data_ln" to find std_data files mysql-test/r/mysqltest.result: Use MYSQLTEST_VARDIR mysql-test/r/outfile.result: Use MYSQLTEST_VARDIR mysql-test/r/query_cache.result: Add missing drop function mysql-test/r/rpl000001.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl000004.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_innodb.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_m.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddata_rule_s.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_loaddatalocal.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_log.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_misc_functions.result: Use MYSQLTEST_VARDIR mysql-test/r/rpl_replicate_do.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_rewrite_db.result: Use "../std_data_ln" to find std_data files mysql-test/r/rpl_timezone.result: Use "../std_data_ln" to find std_data files mysql-test/r/symlink.result: Use MYSQLTEST_VARDIR mysql-test/r/trigger.result: Use "../std_data_ln" to find std_data files mysql-test/r/view.result: Use "../std_data_ln" to find std_data files mysql-test/r/warnings.result: Use "../std_data_ln" to find std_data files mysql-test/t/backup-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/backup.test: Use MYSQLTEST_VARDIR mysql-test/t/blackhole.test: Use "../std_data_ln" to find std_data files mysql-test/t/ctype_ucs_binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/im_daemon_life_cycle-im.opt: Use MYSQLTEST_VARDIR mysql-test/t/im_options_set.imtest: Use MYSQLTEST_VARDIR mysql-test/t/im_options_unset.imtest: Use MYSQLTEST_VARDIR mysql-test/t/loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/myisam.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqlbinlog.test: Use "../std_data_ln" to find std_data files mysql-test/t/mysqlbinlog2.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqldump.test: Use MYSQLTEST_VARDIR mysql-test/t/mysqltest.test: Use MYSQLTEST_VARDIR mysql-test/t/ndb_autodiscover.test: Use MYSQLTEST_VARDIR mysql-test/t/outfile.test: Use MYSQLTEST_VARDIR mysql-test/t/query_cache.test: Add missing drop function mysql-test/t/repair.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000001.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000004.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl000009.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl000015-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl000017-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_EE_error.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_charset.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_drop_db.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-master.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.opt: Use MYSQLTEST_VARDIR mysql-test/t/rpl_flush_log_loop-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_innodb.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_m.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddata_rule_s.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_loaddatalocal.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_log.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_misc_functions-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_misc_functions.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_replicate_do.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rewrite_db.test: Use "../std_data_ln" to find std_data files mysql-test/t/rpl_rotate_logs-slave.sh: Use MYSQLTEST_VARDIR mysql-test/t/rpl_rotate_logs.test: Use MYSQLTEST_VARDIR mysql-test/t/rpl_timezone.test: Use MYSQLTEST_VARDIR mysql-test/t/show_check.test: Use MYSQLTEST_VARDIR mysql-test/t/sp-destruct.test: Use MYSQLTEST_VARDIR mysql-test/t/symlink.test: Use MYSQLTEST_VARDIR mysql-test/t/temp_table-master.opt: Use MYSQLTEST_VARDIR mysql-test/t/trigger-compat.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger-grant.test: Use MYSQLTEST_VARDIR mysql-test/t/trigger.test: Use "../std_data_ln" to find std_data files mysql-test/t/type_varchar.test: Use MYSQLTEST_VARDIR mysql-test/t/user_var-binlog.test: Use MYSQLTEST_VARDIR mysql-test/t/view.test: Use "../std_data_ln" to find std_data files mysql-test/t/warnings.test: Use "../std_data_ln" to find std_data files mysql-test/include/sourced.inc: New BitKeeper file ``mysql-test/include/sourced.inc'' mysql-test/include/sourced1.inc: New BitKeeper file ``mysql-test/include/sourced1.inc''
20 years ago
Add new option "check-testcases" to mysql-test-run.pl Cleanup the sideeffects from most of the testcases with sideeffects. mysql-test/mysql-test-run.pl: Add option "check-testcases" to mysql-test-run.pl Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result" After the teastcase it will run again and this time compare the output with previously recorded file. mysql-test/r/analyze.result: Drop table t1 at end of test mysql-test/r/create_select_tmp.result: Drop table t1 at end of test mysql-test/r/ctype_cp932.result: Drop table t1 at end of test mysql-test/r/ctype_recoding.result: Drop table t1 at end of test mysql-test/r/grant2.result: Drop user mysqltest_2 and mysqltest_A@'%' mysql-test/r/join_outer.result: Drop view v1 to cleanup mysql-test/r/ps_1general.result: Drop table t1 at end of test mysql-test/r/query_cache.result: Drop function "f1" mysql-test/r/read_only.result: Reset the "read_only" flag mysql-test/r/rpl000001.result: Remove user "blafasel2" mysql-test/r/rpl000017.result: Remove user "replicate" mysql-test/r/rpl_failed_optimize.result: Drop table t1 to cleanup mysql-test/r/rpl_flush_tables.result: Drop tables t3, t4, t5 mysql-test/r/rpl_ignore_revoke.result: Delete user "user_foo" mysql-test/r/rpl_insert_id.result: Drop table t1 to cleanup mysql-test/r/rpl_loaddata.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_m.result: Drop tyable t1 to cleanup mysql-test/r/rpl_loaddata_rule_s.result: Drop tyable t1 to cleanup mysql-test/r/rpl_misc_functions.result: Drop tyable t1 to cleanup mysql-test/r/rpl_multi_update3.result: Drop tyable t1 and t2 to cleanup mysql-test/r/rpl_replicate_do.result: Drop tyable t1 to cleanup mysql-test/r/rpl_skip_error.result: Drop tyable t1 to cleanup mysql-test/r/rpl_slave_status.result: Drop tyable t1 to cleanup mysql-test/r/sp-prelocking.result: Drop view v1 and tables t1, t2, t3 and t4 to cleanup mysql-test/r/sp-security.result: Delete users to cleanup Delete remaining traces in tables_priv and procs_priv mysql-test/r/subselect_innodb.result: Drop procedure p1 to cleanup mysql-test/r/trigger-compat.result: Drop trigger wl2818_trg1 and wl2818_trg2. Drop table t1, t2 Drop database mysqltest_db1 And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost" mysql-test/r/type_bit.result: Drop tables t1 and t2 to cleanup mysql-test/r/variables.result: Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt mysql-test/r/view_grant.result: Dop user "test@localhost" to cleanup mysql-test/t/analyze.test: Drop table t1 to cleanup mysql-test/t/create_select_tmp.test: Drop table t1 to cleanup mysql-test/t/ctype_cp932.test: Drop table t1 to cleanup mysql-test/t/ctype_recoding.test: Drop table t1 to cleanup mysql-test/t/fulltext_var.test: Restore the original ft_boolean_syntax mysql-test/t/grant2.test: Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup mysql-test/t/innodb_cache.test: Reset query_cache_size to original value mysql-test/t/join_outer.test: Drop view v1 to cleanup mysql-test/t/ps_1general.test: Drop table t1 to cleanup mysql-test/t/query_cache.test: Drop function "f1" to cleanup mysql-test/t/read_only.test: Reset the readonly flag mysql-test/t/rpl000001.test: Delete user "blafasel2" to cleanup mysql-test/t/rpl000017.test: Delete user "replicate" to cleanup mysql-test/t/rpl_failed_optimize.test: Drop table t1 to cleanup mysql-test/t/rpl_flush_tables.test: Droip table t3, t4 and t5 to cleanup mysql-test/t/rpl_ignore_revoke.test: Delet user "user_foo" to cleanup mysql-test/t/rpl_insert_id.test: drop table t1 to cleanup mysql-test/t/rpl_loaddata.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_m.test: Drop table t1 to cleanup mysql-test/t/rpl_loaddata_rule_s.test: Drop table t1 to cleanup mysql-test/t/rpl_misc_functions.test: Drop table t1 to cleanup mysql-test/t/rpl_multi_update3.test: Drop table t1 and t2 to cleanup mysql-test/t/rpl_replicate_do.test: Drop table t1 to cleanup mysql-test/t/rpl_skip_error.test: Drop table t1 to cleanup mysql-test/t/rpl_slave_status.test: Drop table t1 to cleanup mysql-test/t/sp-prelocking.test: Drop table t1, t2 t3 and t4 to cleanup Drop view v1 mysql-test/t/sp-security.test: Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv Drop table t1 to cleanup mysql-test/t/subselect_innodb.test: Drop procedure p1 to cleanup mysql-test/t/trigger-compat.test: Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup Drop table t1, t2 Drop users drop database mysqltest_db1 mysql-test/t/type_bit.test: drop table t1 and t2 to cleanup mysql-test/t/variables-master.opt: Increase max_join_size to 100. mysql-test/t/variables.test: Set max_join_size to 10, which was the original value in variables-master.opt mysql-test/t/view_grant.test: Drop the user "test@localhost" mysql-test/include/check-testcase.test: New BitKeeper file ``mysql-test/include/check-testcase.test''
20 years ago
Improved testing of ssl and compression - Added show status variable "compression" for checking that compression is turned on. - Updated show status variable "have_openssl" to be set to DISABLED if server supports ssl but it's not turned on to accept incoming ssl connections. - Setup server to accept ssl connections from clients ig that is supported by server - New tests - ssl - Run with ssl turned on - ssl_compress - Run with ssl and compression turned on - compress - Run with compression turned in - Updated test - openssl_1, rpl_openssl1 - Changed to run if server supports ssl BitKeeper/deleted/.del-have_openssl_1.inc~55590efedeec9ee0: Delete: mysql-test/include/have_openssl_1.inc BitKeeper/deleted/.del-have_openssl_1.require~e8cdeb0adba99ac5: Delete: mysql-test/r/have_openssl_1.require client/mysqltest.c: Add commands to enable/disable ssl for the follwing connect's Add commands to enable/disable compression for the following connect's mysql-test/mysql-test-run.pl: Test if ssl is supported by the server If ssl is supported by the server, start server with ability to accept ssl connections from clients Cleanup check of supported features check_ssl_support, check_ndbcluster_support Flags and helptext for mysl-test-run.pl updated --ssl, turn on ssl encryption between server and client --skip-ssl, don'r turn on ssl or setup ssl even if it's supported --with-openssl, deprecated, synonym with --ssl mysql-test/r/openssl_1.result: Update test results mysql-test/t/openssl_1.test: Run this if server reports it has support for ssl Enable ssl before connecting Check that ssl encryption has been turned on mysql-test/t/rpl_openssl.test: Run this if server reports it supports ssl sql-common/client.c: Add DBUG_PRINT's sql/mysqld.cc: If server can't accept ssl connection set have_openssl to SHOW_OPTION_DISABLED Add status variable to show if connection with server is using compressed protocol sql/sql_show.cc: Add status variable to show if connection with server is using compressed protocol sql/structs.h: Add status variable to show if connection with server is using compressed protocol mysql-test/r/compress.result: New BitKeeper file ``mysql-test/r/compress.result'' mysql-test/r/ssl.result: New BitKeeper file ``mysql-test/r/ssl.result'' mysql-test/r/ssl_compress.result: New BitKeeper file ``mysql-test/r/ssl_compress.result'' mysql-test/t/compress.test: New BitKeeper file ``mysql-test/t/compress.test'' mysql-test/t/ssl.test: New BitKeeper file ``mysql-test/t/ssl.test'' mysql-test/t/ssl_compress.test: New BitKeeper file ``mysql-test/t/ssl_compress.test''
21 years ago
  1. #!/usr/bin/perl
  2. # -*- cperl -*-
  3. #
  4. ##############################################################################
  5. #
  6. # mysql-test-run.pl
  7. #
  8. # Tool used for executing a suite of .test file
  9. #
  10. # See the "MySQL Test framework manual" for more information
  11. # http://dev.mysql.com/doc/mysqltest/en/index.html
  12. #
  13. # Please keep the test framework tools identical in all versions!
  14. #
  15. ##############################################################################
  16. #
  17. # Coding style directions for this perl script
  18. #
  19. # - To make this Perl script easy to alter even for those that not
  20. # code Perl that often, keeep the coding style as close as possible to
  21. # the C/C++ MySQL coding standard.
  22. #
  23. # - All lists of arguments to send to commands are Perl lists/arrays,
  24. # not strings we append args to. Within reason, most string
  25. # concatenation for arguments should be avoided.
  26. #
  27. # - Functions defined in the main program are not to be prefixed,
  28. # functions in "library files" are to be prefixed with "mtr_" (for
  29. # Mysql-Test-Run). There are some exceptions, code that fits best in
  30. # the main program, but are put into separate files to avoid
  31. # clutter, may be without prefix.
  32. #
  33. # - All stat/opendir/-f/ is to be kept in collect_test_cases(). It
  34. # will create a struct that the rest of the program can use to get
  35. # the information. This separates the "find information" from the
  36. # "do the work" and makes the program more easy to maintain.
  37. #
  38. # - The rule when it comes to the logic of this program is
  39. #
  40. # command_line_setup() - is to handle the logic between flags
  41. # collect_test_cases() - is to do its best to select what tests
  42. # to run, dig out options, if needs restart etc.
  43. # run_testcase() - is to run a single testcase, and follow the
  44. # logic set in both above. No, or rare file
  45. # system operations. If a test seems complex,
  46. # it should probably not be here.
  47. #
  48. # A nice way to trace the execution of this script while debugging
  49. # is to use the Devel::Trace package found at
  50. # "http://www.plover.com/~mjd/perl/Trace/" and run this script like
  51. # "perl -d:Trace mysql-test-run.pl"
  52. #
  53. $Devel::Trace::TRACE= 0; # Don't trace boring init stuff
  54. #require 5.6.1;
  55. use File::Path;
  56. use File::Basename;
  57. use File::Copy;
  58. use File::Temp qw / tempdir /;
  59. use Cwd;
  60. use Getopt::Long;
  61. use Sys::Hostname;
  62. use IO::Socket;
  63. use IO::Socket::INET;
  64. use strict;
  65. use warnings;
  66. select(STDOUT);
  67. $| = 1; # Automatically flush STDOUT
  68. our $glob_win32_perl= ($^O eq "MSWin32"); # ActiveState Win32 Perl
  69. our $glob_cygwin_perl= ($^O eq "cygwin"); # Cygwin Perl
  70. our $glob_win32= ($glob_win32_perl or $glob_cygwin_perl);
  71. our $glob_netware= ($^O eq "NetWare"); # NetWare
  72. require "lib/mtr_cases.pl";
  73. require "lib/mtr_im.pl";
  74. require "lib/mtr_process.pl";
  75. require "lib/mtr_timer.pl";
  76. require "lib/mtr_io.pl";
  77. require "lib/mtr_gcov.pl";
  78. require "lib/mtr_gprof.pl";
  79. require "lib/mtr_report.pl";
  80. require "lib/mtr_diff.pl";
  81. require "lib/mtr_match.pl";
  82. require "lib/mtr_misc.pl";
  83. require "lib/mtr_stress.pl";
  84. require "lib/mtr_unique.pl";
  85. $Devel::Trace::TRACE= 1;
  86. ##############################################################################
  87. #
  88. # Default settings
  89. #
  90. ##############################################################################
  91. # Misc global variables
  92. our $mysql_version_id;
  93. our $glob_mysql_test_dir= undef;
  94. our $glob_mysql_bench_dir= undef;
  95. our $glob_hostname= undef;
  96. our $glob_scriptname= undef;
  97. our $glob_timers= undef;
  98. our $glob_use_running_ndbcluster= 0;
  99. our $glob_use_running_ndbcluster_slave= 0;
  100. our $glob_use_embedded_server= 0;
  101. our @glob_test_mode;
  102. our $glob_basedir;
  103. our $path_charsetsdir;
  104. our $path_client_bindir;
  105. our $path_language;
  106. our $path_timefile;
  107. our $path_snapshot;
  108. our $path_mysqltest_log;
  109. our $path_current_test_log;
  110. our $path_my_basedir;
  111. our $opt_vardir; # A path but set directly on cmd line
  112. our $path_vardir_trace; # unix formatted opt_vardir for trace files
  113. our $opt_tmpdir; # A path but set directly on cmd line
  114. # Visual Studio produces executables in different sub-directories based on the
  115. # configuration used to build them. To make life easier, an environment
  116. # variable or command-line option may be specified to control which set of
  117. # executables will be used by the test suite.
  118. our $opt_vs_config = $ENV{'MTR_VS_CONFIG'};
  119. our $default_vardir;
  120. our $opt_usage;
  121. our $opt_suite;
  122. our $opt_script_debug= 0; # Script debugging, enable with --script-debug
  123. our $opt_verbose= 0; # Verbose output, enable with --verbose
  124. our $exe_master_mysqld;
  125. our $exe_mysql;
  126. our $exe_mysqladmin;
  127. our $exe_mysql_upgrade;
  128. our $exe_mysqlbinlog;
  129. our $exe_mysql_client_test;
  130. our $exe_bug25714;
  131. our $exe_mysqld;
  132. our $exe_mysqlcheck;
  133. our $exe_mysqldump;
  134. our $exe_mysqlslap;
  135. our $exe_mysqlimport;
  136. our $exe_mysqlshow;
  137. our $exe_mysql_fix_system_tables;
  138. our $file_mysql_fix_privilege_tables;
  139. our $exe_mysqltest;
  140. our $exe_ndbd;
  141. our $exe_ndb_mgmd;
  142. our $exe_slave_mysqld;
  143. our $exe_im;
  144. our $exe_my_print_defaults;
  145. our $exe_perror;
  146. our $lib_udf_example;
  147. our $exe_libtool;
  148. our $opt_bench= 0;
  149. our $opt_small_bench= 0;
  150. our $opt_big_test= 0;
  151. our @opt_extra_mysqld_opt;
  152. our $opt_compress;
  153. our $opt_ssl;
  154. our $opt_skip_ssl;
  155. our $opt_ssl_supported;
  156. our $opt_ps_protocol;
  157. our $opt_sp_protocol;
  158. our $opt_cursor_protocol;
  159. our $opt_view_protocol;
  160. our $opt_debug;
  161. our $opt_do_test;
  162. our @opt_cases; # The test cases names in argv
  163. our $opt_embedded_server;
  164. our $opt_extern= 0;
  165. our $opt_socket;
  166. our $opt_fast;
  167. our $opt_force;
  168. our $opt_reorder= 0;
  169. our $opt_enable_disabled;
  170. our $opt_mem= $ENV{'MTR_MEM'};
  171. our $opt_gcov;
  172. our $opt_gcov_err;
  173. our $opt_gcov_msg;
  174. our $glob_debugger= 0;
  175. our $opt_gdb;
  176. our $opt_client_gdb;
  177. our $opt_ddd;
  178. our $opt_client_ddd;
  179. our $opt_manual_gdb;
  180. our $opt_manual_ddd;
  181. our $opt_manual_debug;
  182. our $opt_mtr_build_thread=0;
  183. our $opt_debugger;
  184. our $opt_client_debugger;
  185. our $opt_gprof;
  186. our $opt_gprof_dir;
  187. our $opt_gprof_master;
  188. our $opt_gprof_slave;
  189. our $master;
  190. our $slave;
  191. our $clusters;
  192. our $instance_manager;
  193. our $opt_master_myport;
  194. our $opt_slave_myport;
  195. our $im_port;
  196. our $im_mysqld1_port;
  197. our $im_mysqld2_port;
  198. our $opt_ndbcluster_port;
  199. our $opt_ndbconnectstring;
  200. our $opt_ndbcluster_port_slave;
  201. our $opt_ndbconnectstring_slave;
  202. our $opt_record;
  203. my $opt_report_features;
  204. our $opt_check_testcases;
  205. our $opt_mark_progress;
  206. our $opt_skip;
  207. our $opt_skip_rpl;
  208. our $max_slave_num= 0;
  209. our $max_master_num= 1;
  210. our $use_innodb;
  211. our $opt_skip_test;
  212. our $opt_skip_im;
  213. our $opt_sleep;
  214. our $opt_testcase_timeout;
  215. our $opt_suite_timeout;
  216. my $default_testcase_timeout= 15; # 15 min max
  217. my $default_suite_timeout= 180; # 3 hours max
  218. our $opt_start_and_exit;
  219. our $opt_start_dirty;
  220. our $opt_start_from;
  221. our $opt_strace_client;
  222. our $opt_timer= 1;
  223. our $opt_user;
  224. our $opt_valgrind= 0;
  225. our $opt_valgrind_mysqld= 0;
  226. our $opt_valgrind_mysqltest= 0;
  227. our $default_valgrind_options= "--show-reachable=yes";
  228. our $opt_valgrind_options;
  229. our $opt_valgrind_path;
  230. our $opt_callgrind;
  231. our $opt_stress= "";
  232. our $opt_stress_suite= "main";
  233. our $opt_stress_mode= "random";
  234. our $opt_stress_threads= 5;
  235. our $opt_stress_test_count= 0;
  236. our $opt_stress_loop_count= 0;
  237. our $opt_stress_test_duration= 0;
  238. our $opt_stress_init_file= "";
  239. our $opt_stress_test_file= "";
  240. our $opt_wait_for_master;
  241. our $opt_wait_for_slave;
  242. our $opt_warnings;
  243. our $opt_udiff;
  244. our $opt_skip_ndbcluster= 0;
  245. our $opt_skip_ndbcluster_slave= 0;
  246. our $opt_with_ndbcluster= 0;
  247. our $opt_with_ndbcluster_only= 0;
  248. our $glob_ndbcluster_supported= 0;
  249. our $opt_ndb_extra_test= 0;
  250. our $opt_skip_master_binlog= 0;
  251. our $opt_skip_slave_binlog= 0;
  252. our $exe_ndb_mgm;
  253. our $exe_ndb_waiter;
  254. our $path_ndb_tools_dir;
  255. our $path_ndb_examples_dir;
  256. our $exe_ndb_example;
  257. our $path_ndb_testrun_log;
  258. our $path_sql_dir;
  259. our @data_dir_lst;
  260. our $used_binlog_format;
  261. our $used_default_engine;
  262. our $debug_compiled_binaries;
  263. our $glob_tot_real_time= 0;
  264. our %mysqld_variables;
  265. my $source_dist= 0;
  266. our $opt_max_save_core= 5;
  267. my $num_saved_cores= 0; # Number of core files saved in vardir/log/ so far.
  268. ######################################################################
  269. #
  270. # Function declarations
  271. #
  272. ######################################################################
  273. sub main ();
  274. sub initial_setup ();
  275. sub command_line_setup ();
  276. sub set_mtr_build_thread_ports($);
  277. sub datadir_list_setup ();
  278. sub executable_setup ();
  279. sub environment_setup ();
  280. sub kill_running_servers ();
  281. sub remove_stale_vardir ();
  282. sub setup_vardir ();
  283. sub check_ssl_support ($);
  284. sub check_running_as_root();
  285. sub check_ndbcluster_support ($);
  286. sub rm_ndbcluster_tables ($);
  287. sub ndbcluster_start_install ($);
  288. sub ndbcluster_start ($$);
  289. sub ndbcluster_wait_started ($$);
  290. sub mysqld_wait_started($);
  291. sub run_benchmarks ($);
  292. sub initialize_servers ();
  293. sub mysql_install_db ();
  294. sub install_db ($$);
  295. sub copy_install_db ($$);
  296. sub run_testcase ($);
  297. sub run_testcase_stop_servers ($$$);
  298. sub run_testcase_start_servers ($);
  299. sub run_testcase_check_skip_test($);
  300. sub report_failure_and_restart ($);
  301. sub do_before_start_master ($);
  302. sub do_before_start_slave ($);
  303. sub ndbd_start ($$$);
  304. sub ndb_mgmd_start ($);
  305. sub mysqld_start ($$$);
  306. sub mysqld_arguments ($$$$);
  307. sub stop_all_servers ();
  308. sub run_mysqltest ($);
  309. sub usage ($);
  310. ######################################################################
  311. #
  312. # Main program
  313. #
  314. ######################################################################
  315. main();
  316. sub main () {
  317. command_line_setup();
  318. check_ndbcluster_support(\%mysqld_variables);
  319. check_ssl_support(\%mysqld_variables);
  320. check_debug_support(\%mysqld_variables);
  321. executable_setup();
  322. environment_setup();
  323. signal_setup();
  324. if ( $opt_gcov )
  325. {
  326. gcov_prepare();
  327. }
  328. if ( $opt_gprof )
  329. {
  330. gprof_prepare();
  331. }
  332. if ( $opt_bench )
  333. {
  334. initialize_servers();
  335. run_benchmarks(shift); # Shift what? Extra arguments?!
  336. }
  337. elsif ( $opt_stress )
  338. {
  339. initialize_servers();
  340. run_stress_test()
  341. }
  342. else
  343. {
  344. # Figure out which tests we are going to run
  345. my $tests= collect_test_cases($opt_suite);
  346. # Turn off NDB and other similar options if no tests use it
  347. my ($need_ndbcluster,$need_im);
  348. foreach my $test (@$tests)
  349. {
  350. next if $test->{skip};
  351. $need_ndbcluster||= $test->{ndb_test};
  352. $need_im||= $test->{component_id} eq 'im';
  353. # Count max number of slaves used by a test case
  354. if ( $test->{slave_num} > $max_slave_num)
  355. {
  356. $max_slave_num= $test->{slave_num};
  357. mtr_error("Too many slaves") if $max_slave_num > 3;
  358. }
  359. # Count max number of masters used by a test case
  360. if ( $test->{master_num} > $max_master_num)
  361. {
  362. $max_master_num= $test->{master_num};
  363. mtr_error("Too many masters") if $max_master_num > 2;
  364. mtr_error("Too few masters") if $max_master_num < 1;
  365. }
  366. $use_innodb||= $test->{'innodb_test'};
  367. }
  368. # Check if cluster can be skipped
  369. if ( !$need_ndbcluster )
  370. {
  371. $opt_skip_ndbcluster= 1;
  372. $opt_skip_ndbcluster_slave= 1;
  373. }
  374. # Check if slave cluster can be skipped
  375. if ($max_slave_num == 0)
  376. {
  377. $opt_skip_ndbcluster_slave= 1;
  378. }
  379. # Check if im can be skipped
  380. if ( ! $need_im )
  381. {
  382. $opt_skip_im= 1;
  383. }
  384. initialize_servers();
  385. if ( $opt_report_features ) {
  386. run_report_features();
  387. }
  388. run_suite($opt_suite, $tests);
  389. }
  390. mtr_exit(0);
  391. }
  392. ##############################################################################
  393. #
  394. # Default settings
  395. #
  396. ##############################################################################
  397. sub command_line_setup () {
  398. # These are defaults for things that are set on the command line
  399. $opt_suite= "main"; # Special default suite
  400. my $opt_comment;
  401. $opt_master_myport= 9306;
  402. $opt_slave_myport= 9308;
  403. $opt_ndbcluster_port= 9310;
  404. $opt_ndbcluster_port_slave= 9311;
  405. $im_port= 9312;
  406. $im_mysqld1_port= 9313;
  407. $im_mysqld2_port= 9314;
  408. # If so requested, we try to avail ourselves of a unique build thread number.
  409. if ( $ENV{'MTR_BUILD_THREAD'} ) {
  410. if ( lc($ENV{'MTR_BUILD_THREAD'}) eq 'auto' ) {
  411. print "Requesting build thread... ";
  412. $ENV{'MTR_BUILD_THREAD'} = mtr_require_unique_id_and_wait("/tmp/mysql-test-ports", 200, 299);
  413. print "got ".$ENV{'MTR_BUILD_THREAD'}."\n";
  414. }
  415. }
  416. if ( $ENV{'MTR_BUILD_THREAD'} )
  417. {
  418. set_mtr_build_thread_ports($ENV{'MTR_BUILD_THREAD'});
  419. }
  420. # This is needed for test log evaluation in "gen-build-status-page"
  421. # in all cases where the calling tool does not log the commands
  422. # directly before it executes them, like "make test-force-pl" in RPM builds.
  423. print "Logging: $0 ", join(" ", @ARGV), "\n";
  424. # Read the command line
  425. # Note: Keep list, and the order, in sync with usage at end of this file
  426. Getopt::Long::Configure("pass_through");
  427. GetOptions(
  428. # Control what engine/variation to run
  429. 'embedded-server' => \$opt_embedded_server,
  430. 'ps-protocol' => \$opt_ps_protocol,
  431. 'sp-protocol' => \$opt_sp_protocol,
  432. 'view-protocol' => \$opt_view_protocol,
  433. 'cursor-protocol' => \$opt_cursor_protocol,
  434. 'ssl|with-openssl' => \$opt_ssl,
  435. 'skip-ssl' => \$opt_skip_ssl,
  436. 'compress' => \$opt_compress,
  437. 'bench' => \$opt_bench,
  438. 'small-bench' => \$opt_small_bench,
  439. 'with-ndbcluster|ndb' => \$opt_with_ndbcluster,
  440. 'vs-config' => \$opt_vs_config,
  441. # Control what test suites or cases to run
  442. 'force' => \$opt_force,
  443. 'with-ndbcluster-only' => \$opt_with_ndbcluster_only,
  444. 'skip-ndbcluster|skip-ndb' => \$opt_skip_ndbcluster,
  445. 'skip-ndbcluster-slave|skip-ndb-slave'
  446. => \$opt_skip_ndbcluster_slave,
  447. 'ndb-extra-test' => \$opt_ndb_extra_test,
  448. 'skip-master-binlog' => \$opt_skip_master_binlog,
  449. 'skip-slave-binlog' => \$opt_skip_slave_binlog,
  450. 'do-test=s' => \$opt_do_test,
  451. 'start-from=s' => \$opt_start_from,
  452. 'suite=s' => \$opt_suite,
  453. 'skip-rpl' => \$opt_skip_rpl,
  454. 'skip-im' => \$opt_skip_im,
  455. 'skip-test=s' => \$opt_skip_test,
  456. 'big-test' => \$opt_big_test,
  457. # Specify ports
  458. 'master_port=i' => \$opt_master_myport,
  459. 'slave_port=i' => \$opt_slave_myport,
  460. 'ndbcluster-port|ndbcluster_port=i' => \$opt_ndbcluster_port,
  461. 'ndbcluster-port-slave=i' => \$opt_ndbcluster_port_slave,
  462. 'im-port=i' => \$im_port, # Instance Manager port.
  463. 'im-mysqld1-port=i' => \$im_mysqld1_port, # Port of mysqld, controlled by IM
  464. 'im-mysqld2-port=i' => \$im_mysqld2_port, # Port of mysqld, controlled by IM
  465. 'mtr-build-thread=i' => \$opt_mtr_build_thread,
  466. # Test case authoring
  467. 'record' => \$opt_record,
  468. 'check-testcases' => \$opt_check_testcases,
  469. 'mark-progress' => \$opt_mark_progress,
  470. # Extra options used when starting mysqld
  471. 'mysqld=s' => \@opt_extra_mysqld_opt,
  472. # Run test on running server
  473. 'extern' => \$opt_extern,
  474. 'ndb-connectstring=s' => \$opt_ndbconnectstring,
  475. 'ndb-connectstring-slave=s' => \$opt_ndbconnectstring_slave,
  476. # Debugging
  477. 'gdb' => \$opt_gdb,
  478. 'client-gdb' => \$opt_client_gdb,
  479. 'manual-gdb' => \$opt_manual_gdb,
  480. 'manual-debug' => \$opt_manual_debug,
  481. 'ddd' => \$opt_ddd,
  482. 'client-ddd' => \$opt_client_ddd,
  483. 'manual-ddd' => \$opt_manual_ddd,
  484. 'debugger=s' => \$opt_debugger,
  485. 'client-debugger=s' => \$opt_client_debugger,
  486. 'strace-client' => \$opt_strace_client,
  487. 'master-binary=s' => \$exe_master_mysqld,
  488. 'slave-binary=s' => \$exe_slave_mysqld,
  489. 'max-save-core=i' => \$opt_max_save_core,
  490. # Coverage, profiling etc
  491. 'gcov' => \$opt_gcov,
  492. 'gprof' => \$opt_gprof,
  493. 'valgrind|valgrind-all' => \$opt_valgrind,
  494. 'valgrind-mysqltest' => \$opt_valgrind_mysqltest,
  495. 'valgrind-mysqld' => \$opt_valgrind_mysqld,
  496. 'valgrind-options=s' => \$opt_valgrind_options,
  497. 'valgrind-path=s' => \$opt_valgrind_path,
  498. 'callgrind' => \$opt_callgrind,
  499. # Stress testing
  500. 'stress' => \$opt_stress,
  501. 'stress-suite=s' => \$opt_stress_suite,
  502. 'stress-threads=i' => \$opt_stress_threads,
  503. 'stress-test-file=s' => \$opt_stress_test_file,
  504. 'stress-init-file=s' => \$opt_stress_init_file,
  505. 'stress-mode=s' => \$opt_stress_mode,
  506. 'stress-loop-count=i' => \$opt_stress_loop_count,
  507. 'stress-test-count=i' => \$opt_stress_test_count,
  508. 'stress-test-duration=i' => \$opt_stress_test_duration,
  509. # Directories
  510. 'tmpdir=s' => \$opt_tmpdir,
  511. 'vardir=s' => \$opt_vardir,
  512. 'benchdir=s' => \$glob_mysql_bench_dir,
  513. 'mem' => \$opt_mem,
  514. # Misc
  515. 'report-features' => \$opt_report_features,
  516. 'comment=s' => \$opt_comment,
  517. 'debug' => \$opt_debug,
  518. 'fast' => \$opt_fast,
  519. 'reorder' => \$opt_reorder,
  520. 'enable-disabled' => \$opt_enable_disabled,
  521. 'script-debug' => \$opt_script_debug,
  522. 'verbose' => \$opt_verbose,
  523. 'sleep=i' => \$opt_sleep,
  524. 'socket=s' => \$opt_socket,
  525. 'start-dirty' => \$opt_start_dirty,
  526. 'start-and-exit' => \$opt_start_and_exit,
  527. 'timer!' => \$opt_timer,
  528. 'unified-diff|udiff' => \$opt_udiff,
  529. 'user=s' => \$opt_user,
  530. 'testcase-timeout=i' => \$opt_testcase_timeout,
  531. 'suite-timeout=i' => \$opt_suite_timeout,
  532. 'warnings|log-warnings' => \$opt_warnings,
  533. 'help|h' => \$opt_usage,
  534. ) or usage("Can't read options");
  535. usage("") if $opt_usage;
  536. $glob_scriptname= basename($0);
  537. if ($opt_mtr_build_thread != 0)
  538. {
  539. set_mtr_build_thread_ports($opt_mtr_build_thread)
  540. }
  541. elsif ($ENV{'MTR_BUILD_THREAD'})
  542. {
  543. $opt_mtr_build_thread= $ENV{'MTR_BUILD_THREAD'};
  544. }
  545. # We require that we are in the "mysql-test" directory
  546. # to run mysql-test-run
  547. if (! -f $glob_scriptname)
  548. {
  549. mtr_error("Can't find the location for the mysql-test-run script\n" .
  550. "Go to to the mysql-test directory and execute the script " .
  551. "as follows:\n./$glob_scriptname");
  552. }
  553. if ( -d "../sql" )
  554. {
  555. $source_dist= 1;
  556. }
  557. $glob_hostname= mtr_short_hostname();
  558. # Find the absolute path to the test directory
  559. $glob_mysql_test_dir= cwd();
  560. if ( $glob_cygwin_perl )
  561. {
  562. # Windows programs like 'mysqld' needs Windows paths
  563. $glob_mysql_test_dir= `cygpath -m "$glob_mysql_test_dir"`;
  564. chomp($glob_mysql_test_dir);
  565. }
  566. # In most cases, the base directory we find everything relative to,
  567. # is the parent directory of the "mysql-test" directory. For source
  568. # distributions, TAR binary distributions and some other packages.
  569. $glob_basedir= dirname($glob_mysql_test_dir);
  570. # In the RPM case, binaries and libraries are installed in the
  571. # default system locations, instead of having our own private base
  572. # directory. And we install "/usr/share/mysql-test". Moving up one
  573. # more directory relative to "mysql-test" gives us a usable base
  574. # directory for RPM installs.
  575. if ( ! $source_dist and ! -d "$glob_basedir/bin" )
  576. {
  577. $glob_basedir= dirname($glob_basedir);
  578. }
  579. # Expect mysql-bench to be located adjacent to the source tree, by default
  580. $glob_mysql_bench_dir= "$glob_basedir/../mysql-bench"
  581. unless defined $glob_mysql_bench_dir;
  582. $glob_mysql_bench_dir= undef
  583. unless -d $glob_mysql_bench_dir;
  584. $path_my_basedir=
  585. $source_dist ? $glob_mysql_test_dir : $glob_basedir;
  586. $glob_timers= mtr_init_timers();
  587. #
  588. # Find the mysqld executable to be able to find the mysqld version
  589. # number as early as possible
  590. #
  591. # Look for the client binaries directory
  592. $path_client_bindir= mtr_path_exists("$glob_basedir/client_release",
  593. "$glob_basedir/client_debug",
  594. vs_config_dirs('client', ''),
  595. "$glob_basedir/client",
  596. "$glob_basedir/bin");
  597. if (!$opt_extern)
  598. {
  599. $exe_mysqld= mtr_exe_exists (vs_config_dirs('sql', 'mysqld'),
  600. "$glob_basedir/sql/mysqld",
  601. "$path_client_bindir/mysqld-max-nt",
  602. "$path_client_bindir/mysqld-max",
  603. "$path_client_bindir/mysqld-nt",
  604. "$path_client_bindir/mysqld",
  605. "$path_client_bindir/mysqld-debug",
  606. "$path_client_bindir/mysqld-max",
  607. "$glob_basedir/libexec/mysqld",
  608. "$glob_basedir/bin/mysqld",
  609. "$glob_basedir/sbin/mysqld");
  610. # Use the mysqld found above to find out what features are available
  611. collect_mysqld_features();
  612. }
  613. else
  614. {
  615. $mysqld_variables{'port'}= 3306;
  616. $mysqld_variables{'master-port'}= 3306;
  617. }
  618. if ( $opt_comment )
  619. {
  620. print "\n";
  621. print '#' x 78, "\n";
  622. print "# $opt_comment\n";
  623. print '#' x 78, "\n\n";
  624. }
  625. foreach my $arg ( @ARGV )
  626. {
  627. if ( $arg =~ /^--skip-/ )
  628. {
  629. push(@opt_extra_mysqld_opt, $arg);
  630. }
  631. elsif ( $arg =~ /^--$/ )
  632. {
  633. # It is an effect of setting 'pass_through' in option processing
  634. # that the lone '--' separating options from arguments survives,
  635. # simply ignore it.
  636. }
  637. elsif ( $arg =~ /^-/ )
  638. {
  639. usage("Invalid option \"$arg\"");
  640. }
  641. else
  642. {
  643. push(@opt_cases, $arg);
  644. }
  645. }
  646. # --------------------------------------------------------------------------
  647. # Find out type of logging that are being used
  648. # --------------------------------------------------------------------------
  649. # NOTE if the default binlog format is changed, this has to be changed
  650. $used_binlog_format= "stmt";
  651. if (!$opt_extern && $mysql_version_id >= 50100 )
  652. {
  653. $used_binlog_format= "mixed"; # Default value for binlog format
  654. foreach my $arg ( @opt_extra_mysqld_opt )
  655. {
  656. if ( $arg =~ /binlog-format=(\S+)/ )
  657. {
  658. $used_binlog_format= $1;
  659. }
  660. }
  661. mtr_report("Using binlog format '$used_binlog_format'");
  662. }
  663. # --------------------------------------------------------------------------
  664. # Find out default storage engine being used(if any)
  665. # --------------------------------------------------------------------------
  666. if ( $opt_with_ndbcluster )
  667. {
  668. # --ndb or --with-ndbcluster turns on --default-storage-engine=ndbcluster
  669. push(@opt_extra_mysqld_opt, "--default-storage-engine=ndbcluster");
  670. }
  671. foreach my $arg ( @opt_extra_mysqld_opt )
  672. {
  673. if ( $arg =~ /default-storage-engine=(\S+)/ )
  674. {
  675. $used_default_engine= $1;
  676. }
  677. }
  678. mtr_report("Using default engine '$used_default_engine'")
  679. if defined $used_default_engine;
  680. # --------------------------------------------------------------------------
  681. # Check if we should speed up tests by trying to run on tmpfs
  682. # --------------------------------------------------------------------------
  683. if ( defined $opt_mem )
  684. {
  685. mtr_error("Can't use --mem and --vardir at the same time ")
  686. if $opt_vardir;
  687. mtr_error("Can't use --mem and --tmpdir at the same time ")
  688. if $opt_tmpdir;
  689. # Search through list of locations that are known
  690. # to be "fast disks" to list to find a suitable location
  691. # Use --mem=<dir> as first location to look.
  692. my @tmpfs_locations= ($opt_mem, "/dev/shm", "/tmp");
  693. foreach my $fs (@tmpfs_locations)
  694. {
  695. if ( -d $fs )
  696. {
  697. mtr_report("Using tmpfs in $fs");
  698. $opt_mem= "$fs/var";
  699. $opt_mem .= $opt_mtr_build_thread if $opt_mtr_build_thread;
  700. last;
  701. }
  702. }
  703. }
  704. # --------------------------------------------------------------------------
  705. # Set the "var/" directory, as it is the base for everything else
  706. # --------------------------------------------------------------------------
  707. $default_vardir= "$glob_mysql_test_dir/var";
  708. if ( ! $opt_vardir )
  709. {
  710. $opt_vardir= $default_vardir;
  711. }
  712. elsif ( $mysql_version_id < 50000 and
  713. $opt_vardir ne $default_vardir)
  714. {
  715. # Version 4.1 and --vardir was specified
  716. # Only supported as a symlink from var/
  717. # by setting up $opt_mem that symlink will be created
  718. if ( ! $glob_win32 )
  719. {
  720. # Only platforms that have native symlinks can use the vardir trick
  721. $opt_mem= $opt_vardir;
  722. mtr_report("Using 4.1 vardir trick");
  723. }
  724. $opt_vardir= $default_vardir;
  725. }
  726. $path_vardir_trace= $opt_vardir;
  727. # Chop off any "c:", DBUG likes a unix path ex: c:/src/... => /src/...
  728. $path_vardir_trace=~ s/^\w://;
  729. # We make the path absolute, as the server will do a chdir() before usage
  730. unless ( $opt_vardir =~ m,^/, or
  731. ($glob_win32 and $opt_vardir =~ m,^[a-z]:/,i) )
  732. {
  733. # Make absolute path, relative test dir
  734. $opt_vardir= "$glob_mysql_test_dir/$opt_vardir";
  735. }
  736. # --------------------------------------------------------------------------
  737. # Set tmpdir
  738. # --------------------------------------------------------------------------
  739. $opt_tmpdir= "$opt_vardir/tmp" unless $opt_tmpdir;
  740. $opt_tmpdir =~ s,/+$,,; # Remove ending slash if any
  741. # --------------------------------------------------------------------------
  742. # Check im suport
  743. # --------------------------------------------------------------------------
  744. if ($opt_extern)
  745. {
  746. mtr_report("Disable instance manager when running with extern mysqld");
  747. $opt_skip_im= 1;
  748. }
  749. elsif ( $mysql_version_id < 50000 )
  750. {
  751. # Instance manager is not supported until 5.0
  752. $opt_skip_im= 1;
  753. }
  754. elsif ( $glob_win32 )
  755. {
  756. mtr_report("Disable Instance manager - testing not supported on Windows");
  757. $opt_skip_im= 1;
  758. }
  759. # --------------------------------------------------------------------------
  760. # Record flag
  761. # --------------------------------------------------------------------------
  762. if ( $opt_record and ! @opt_cases )
  763. {
  764. mtr_error("Will not run in record mode without a specific test case");
  765. }
  766. # --------------------------------------------------------------------------
  767. # Embedded server flag
  768. # --------------------------------------------------------------------------
  769. if ( $opt_embedded_server )
  770. {
  771. $glob_use_embedded_server= 1;
  772. push(@glob_test_mode, "embedded");
  773. $opt_skip_rpl= 1; # We never run replication with embedded
  774. $opt_skip_ndbcluster= 1; # Turn off use of NDB cluster
  775. $opt_skip_ssl= 1; # Turn off use of SSL
  776. # Turn off use of bin log
  777. push(@opt_extra_mysqld_opt, "--skip-log-bin");
  778. if ( $opt_extern )
  779. {
  780. mtr_error("Can't use --extern with --embedded-server");
  781. }
  782. }
  783. # --------------------------------------------------------------------------
  784. # ps protcol flag
  785. # --------------------------------------------------------------------------
  786. if ( $opt_ps_protocol )
  787. {
  788. push(@glob_test_mode, "ps-protocol");
  789. }
  790. # --------------------------------------------------------------------------
  791. # Ndb cluster flags
  792. # --------------------------------------------------------------------------
  793. if ( $opt_ndbconnectstring )
  794. {
  795. $glob_use_running_ndbcluster= 1;
  796. mtr_error("Can't specify --ndb-connectstring and --skip-ndbcluster")
  797. if $opt_skip_ndbcluster;
  798. mtr_error("Can't specify --ndb-connectstring and --ndbcluster-port")
  799. if $opt_ndbcluster_port;
  800. }
  801. else
  802. {
  803. # Set default connect string
  804. $opt_ndbconnectstring= "host=localhost:$opt_ndbcluster_port";
  805. }
  806. if ( $opt_ndbconnectstring_slave )
  807. {
  808. $glob_use_running_ndbcluster_slave= 1;
  809. mtr_error("Can't specify ndb-connectstring_slave and " .
  810. "--skip-ndbcluster-slave")
  811. if $opt_skip_ndbcluster;
  812. mtr_error("Can't specify --ndb-connectstring-slave and " .
  813. "--ndbcluster-port-slave")
  814. if $opt_ndbcluster_port_slave;
  815. }
  816. else
  817. {
  818. # Set default connect string
  819. $opt_ndbconnectstring_slave= "host=localhost:$opt_ndbcluster_port_slave";
  820. }
  821. # --------------------------------------------------------------------------
  822. # Bench flags
  823. # --------------------------------------------------------------------------
  824. if ( $opt_small_bench )
  825. {
  826. $opt_bench= 1;
  827. }
  828. # --------------------------------------------------------------------------
  829. # Big test flags
  830. # --------------------------------------------------------------------------
  831. if ( $opt_big_test )
  832. {
  833. $ENV{'BIG_TEST'}= 1;
  834. }
  835. # --------------------------------------------------------------------------
  836. # Gcov flag
  837. # --------------------------------------------------------------------------
  838. if ( $opt_gcov and ! $source_dist )
  839. {
  840. mtr_error("Coverage test needs the source - please use source dist");
  841. }
  842. # --------------------------------------------------------------------------
  843. # Check debug related options
  844. # --------------------------------------------------------------------------
  845. if ( $opt_gdb || $opt_client_gdb || $opt_ddd || $opt_client_ddd ||
  846. $opt_manual_gdb || $opt_manual_ddd || $opt_manual_debug ||
  847. $opt_debugger || $opt_client_debugger )
  848. {
  849. # Indicate that we are using debugger
  850. $glob_debugger= 1;
  851. if ( $opt_extern )
  852. {
  853. mtr_error("Can't use --extern when using debugger");
  854. }
  855. }
  856. # --------------------------------------------------------------------------
  857. # Check if special exe was selected for master or slave
  858. # --------------------------------------------------------------------------
  859. $exe_master_mysqld= $exe_master_mysqld || $exe_mysqld;
  860. $exe_slave_mysqld= $exe_slave_mysqld || $exe_mysqld;
  861. # --------------------------------------------------------------------------
  862. # Check valgrind arguments
  863. # --------------------------------------------------------------------------
  864. if ( $opt_valgrind or $opt_valgrind_path or defined $opt_valgrind_options)
  865. {
  866. mtr_report("Turning on valgrind for all executables");
  867. $opt_valgrind= 1;
  868. $opt_valgrind_mysqld= 1;
  869. $opt_valgrind_mysqltest= 1;
  870. }
  871. elsif ( $opt_valgrind_mysqld )
  872. {
  873. mtr_report("Turning on valgrind for mysqld(s) only");
  874. $opt_valgrind= 1;
  875. }
  876. elsif ( $opt_valgrind_mysqltest )
  877. {
  878. mtr_report("Turning on valgrind for mysqltest and mysql_client_test only");
  879. $opt_valgrind= 1;
  880. }
  881. if ( $opt_callgrind )
  882. {
  883. mtr_report("Turning on valgrind with callgrind for mysqld(s)");
  884. $opt_valgrind= 1;
  885. $opt_valgrind_mysqld= 1;
  886. # Set special valgrind options unless options passed on command line
  887. $opt_valgrind_options="--trace-children=yes"
  888. unless defined $opt_valgrind_options;
  889. }
  890. if ( $opt_valgrind )
  891. {
  892. # Set valgrind_options to default unless already defined
  893. $opt_valgrind_options=$default_valgrind_options
  894. unless defined $opt_valgrind_options;
  895. mtr_report("Running valgrind with options \"$opt_valgrind_options\"");
  896. }
  897. if ( ! $opt_testcase_timeout )
  898. {
  899. $opt_testcase_timeout= $default_testcase_timeout;
  900. $opt_testcase_timeout*= 10 if $opt_valgrind;
  901. }
  902. if ( ! $opt_suite_timeout )
  903. {
  904. $opt_suite_timeout= $default_suite_timeout;
  905. $opt_suite_timeout*= 6 if $opt_valgrind;
  906. }
  907. if ( ! $opt_user )
  908. {
  909. if ( $opt_extern )
  910. {
  911. $opt_user= "test";
  912. }
  913. else
  914. {
  915. $opt_user= "root"; # We want to do FLUSH xxx commands
  916. }
  917. }
  918. # On QNX, /tmp/dir/master.sock and /tmp/dir//master.sock seem to be
  919. # considered different, so avoid the extra slash (/) in the socket
  920. # paths.
  921. my $sockdir = $opt_tmpdir;
  922. $sockdir =~ s|/+$||;
  923. # On some operating systems, there is a limit to the length of a
  924. # UNIX domain socket's path far below PATH_MAX, so try to avoid long
  925. # socket path names.
  926. $sockdir = tempdir(CLEANUP => 0) if ( length($sockdir) >= 70 );
  927. $master->[0]=
  928. {
  929. pid => 0,
  930. type => "master",
  931. idx => 0,
  932. path_myddir => "$opt_vardir/master-data",
  933. path_myerr => "$opt_vardir/log/master.err",
  934. path_pid => "$opt_vardir/run/master.pid",
  935. path_sock => "$sockdir/master.sock",
  936. port => $opt_master_myport,
  937. start_timeout => 400, # enough time create innodb tables
  938. cluster => 0, # index in clusters list
  939. start_opts => [],
  940. };
  941. $master->[1]=
  942. {
  943. pid => 0,
  944. type => "master",
  945. idx => 1,
  946. path_myddir => "$opt_vardir/master1-data",
  947. path_myerr => "$opt_vardir/log/master1.err",
  948. path_pid => "$opt_vardir/run/master1.pid",
  949. path_sock => "$sockdir/master1.sock",
  950. port => $opt_master_myport + 1,
  951. start_timeout => 400, # enough time create innodb tables
  952. cluster => 0, # index in clusters list
  953. start_opts => [],
  954. };
  955. $slave->[0]=
  956. {
  957. pid => 0,
  958. type => "slave",
  959. idx => 0,
  960. path_myddir => "$opt_vardir/slave-data",
  961. path_myerr => "$opt_vardir/log/slave.err",
  962. path_pid => "$opt_vardir/run/slave.pid",
  963. path_sock => "$sockdir/slave.sock",
  964. port => $opt_slave_myport,
  965. start_timeout => 400,
  966. cluster => 1, # index in clusters list
  967. start_opts => [],
  968. };
  969. $slave->[1]=
  970. {
  971. pid => 0,
  972. type => "slave",
  973. idx => 1,
  974. path_myddir => "$opt_vardir/slave1-data",
  975. path_myerr => "$opt_vardir/log/slave1.err",
  976. path_pid => "$opt_vardir/run/slave1.pid",
  977. path_sock => "$sockdir/slave1.sock",
  978. port => $opt_slave_myport + 1,
  979. start_timeout => 300,
  980. cluster => -1, # index in clusters list
  981. start_opts => [],
  982. };
  983. $slave->[2]=
  984. {
  985. pid => 0,
  986. type => "slave",
  987. idx => 2,
  988. path_myddir => "$opt_vardir/slave2-data",
  989. path_myerr => "$opt_vardir/log/slave2.err",
  990. path_pid => "$opt_vardir/run/slave2.pid",
  991. path_sock => "$sockdir/slave2.sock",
  992. port => $opt_slave_myport + 2,
  993. start_timeout => 300,
  994. cluster => -1, # index in clusters list
  995. start_opts => [],
  996. };
  997. $instance_manager=
  998. {
  999. path_err => "$opt_vardir/log/im.err",
  1000. path_log => "$opt_vardir/log/im.log",
  1001. path_pid => "$opt_vardir/run/im.pid",
  1002. path_angel_pid => "$opt_vardir/run/im.angel.pid",
  1003. path_sock => "$sockdir/im.sock",
  1004. port => $im_port,
  1005. start_timeout => $master->[0]->{'start_timeout'},
  1006. admin_login => 'im_admin',
  1007. admin_password => 'im_admin_secret',
  1008. admin_sha1 => '*598D51AD2DFF7792045D6DF3DDF9AA1AF737B295',
  1009. password_file => "$opt_vardir/im.passwd",
  1010. defaults_file => "$opt_vardir/im.cnf",
  1011. };
  1012. $instance_manager->{'instances'}->[0]=
  1013. {
  1014. server_id => 1,
  1015. port => $im_mysqld1_port,
  1016. path_datadir => "$opt_vardir/im_mysqld_1.data",
  1017. path_sock => "$sockdir/mysqld_1.sock",
  1018. path_pid => "$opt_vardir/run/mysqld_1.pid",
  1019. start_timeout => 400, # enough time create innodb tables
  1020. old_log_format => 1
  1021. };
  1022. $instance_manager->{'instances'}->[1]=
  1023. {
  1024. server_id => 2,
  1025. port => $im_mysqld2_port,
  1026. path_datadir => "$opt_vardir/im_mysqld_2.data",
  1027. path_sock => "$sockdir/mysqld_2.sock",
  1028. path_pid => "$opt_vardir/run/mysqld_2.pid",
  1029. nonguarded => 1,
  1030. start_timeout => 400, # enough time create innodb tables
  1031. old_log_format => 1
  1032. };
  1033. my $data_dir= "$opt_vardir/ndbcluster-$opt_ndbcluster_port";
  1034. $clusters->[0]=
  1035. {
  1036. name => "Master",
  1037. nodes => 2,
  1038. port => "$opt_ndbcluster_port",
  1039. data_dir => "$data_dir",
  1040. connect_string => "$opt_ndbconnectstring",
  1041. path_pid => "$data_dir/ndb_3.pid", # Nodes + 1
  1042. pid => 0, # pid of ndb_mgmd
  1043. installed_ok => 0,
  1044. };
  1045. $data_dir= "$opt_vardir/ndbcluster-$opt_ndbcluster_port_slave";
  1046. $clusters->[1]=
  1047. {
  1048. name => "Slave",
  1049. nodes => 1,
  1050. port => "$opt_ndbcluster_port_slave",
  1051. data_dir => "$data_dir",
  1052. connect_string => "$opt_ndbconnectstring_slave",
  1053. path_pid => "$data_dir/ndb_2.pid", # Nodes + 1
  1054. pid => 0, # pid of ndb_mgmd
  1055. installed_ok => 0,
  1056. };
  1057. # Init pids of ndbd's
  1058. foreach my $cluster ( @{$clusters} )
  1059. {
  1060. for ( my $idx= 0; $idx < $cluster->{'nodes'}; $idx++ )
  1061. {
  1062. my $nodeid= $idx+1;
  1063. $cluster->{'ndbds'}->[$idx]=
  1064. {
  1065. pid => 0,
  1066. nodeid => $nodeid,
  1067. path_pid => "$cluster->{'data_dir'}/ndb_${nodeid}.pid",
  1068. path_fs => "$cluster->{'data_dir'}/ndb_${nodeid}_fs",
  1069. };
  1070. }
  1071. }
  1072. if ( $opt_extern )
  1073. {
  1074. # Turn off features not supported when running with extern server
  1075. $opt_skip_rpl= 1;
  1076. $opt_skip_ndbcluster= 1;
  1077. # Setup master->[0] with the settings for the extern server
  1078. $master->[0]->{'path_sock'}= $opt_socket ? $opt_socket : "/tmp/mysql.sock";
  1079. mtr_report("Using extern server at '$master->[0]->{path_sock}'");
  1080. }
  1081. else
  1082. {
  1083. mtr_error("--socket can only be used in combination with --extern")
  1084. if $opt_socket;
  1085. }
  1086. $path_timefile= "$opt_vardir/log/mysqltest-time";
  1087. $path_mysqltest_log= "$opt_vardir/log/mysqltest.log";
  1088. $path_current_test_log= "$opt_vardir/log/current_test";
  1089. $path_ndb_testrun_log= "$opt_vardir/log/ndb_testrun.log";
  1090. $path_snapshot= "$opt_tmpdir/snapshot_$opt_master_myport/";
  1091. if ( $opt_valgrind and $opt_debug )
  1092. {
  1093. # When both --valgrind and --debug is selected, send
  1094. # all output to the trace file, making it possible to
  1095. # see the exact location where valgrind complains
  1096. foreach my $mysqld (@{$master}, @{$slave})
  1097. {
  1098. my $sidx= $mysqld->{idx} ? "$mysqld->{idx}" : "";
  1099. $mysqld->{path_myerr}=
  1100. "$opt_vardir/log/" . $mysqld->{type} . "$sidx.trace";
  1101. }
  1102. }
  1103. }
  1104. #
  1105. # To make it easier for different devs to work on the same host,
  1106. # an environment variable can be used to control all ports. A small
  1107. # number is to be used, 0 - 16 or similar.
  1108. #
  1109. # Note the MASTER_MYPORT has to be set the same in all 4.x and 5.x
  1110. # versions of this script, else a 4.0 test run might conflict with a
  1111. # 5.1 test run, even if different MTR_BUILD_THREAD is used. This means
  1112. # all port numbers might not be used in this version of the script.
  1113. #
  1114. # Also note the limitation of ports we are allowed to hand out. This
  1115. # differs between operating systems and configuration, see
  1116. # http://www.ncftp.com/ncftpd/doc/misc/ephemeral_ports.html
  1117. # But a fairly safe range seems to be 5001 - 32767
  1118. #
  1119. sub set_mtr_build_thread_ports($) {
  1120. my $mtr_build_thread= shift;
  1121. if ( lc($mtr_build_thread) eq 'auto' ) {
  1122. print "Requesting build thread... ";
  1123. $ENV{'MTR_BUILD_THREAD'} = $mtr_build_thread = mtr_require_unique_id_and_wait("/tmp/mysql-test-ports", 200, 299);
  1124. print "got ".$mtr_build_thread."\n";
  1125. }
  1126. # Up to two masters, up to three slaves
  1127. $opt_master_myport= $mtr_build_thread * 10 + 10000; # and 1
  1128. $opt_slave_myport= $opt_master_myport + 2; # and 3 4
  1129. $opt_ndbcluster_port= $opt_master_myport + 5;
  1130. $opt_ndbcluster_port_slave= $opt_master_myport + 6;
  1131. $im_port= $opt_master_myport + 7;
  1132. $im_mysqld1_port= $opt_master_myport + 8;
  1133. $im_mysqld2_port= $opt_master_myport + 9;
  1134. if ( $opt_master_myport < 5001 or $opt_master_myport + 10 >= 32767 )
  1135. {
  1136. mtr_error("MTR_BUILD_THREAD number results in a port",
  1137. "outside 5001 - 32767",
  1138. "($opt_master_myport - $opt_master_myport + 10)");
  1139. }
  1140. }
  1141. sub datadir_list_setup () {
  1142. # Make a list of all data_dirs
  1143. for (my $idx= 0; $idx < $max_master_num; $idx++)
  1144. {
  1145. push(@data_dir_lst, $master->[$idx]->{'path_myddir'});
  1146. }
  1147. for (my $idx= 0; $idx < $max_slave_num; $idx++)
  1148. {
  1149. push(@data_dir_lst, $slave->[$idx]->{'path_myddir'});
  1150. }
  1151. unless ($opt_skip_im)
  1152. {
  1153. foreach my $instance (@{$instance_manager->{'instances'}})
  1154. {
  1155. push(@data_dir_lst, $instance->{'path_datadir'});
  1156. }
  1157. }
  1158. }
  1159. ##############################################################################
  1160. #
  1161. # Set paths to various executable programs
  1162. #
  1163. ##############################################################################
  1164. sub collect_mysqld_features () {
  1165. my $found_variable_list_start= 0;
  1166. #
  1167. # Execute "mysqld --no-defaults --help --verbose" to get a
  1168. # list of all features and settings
  1169. #
  1170. my $list= `$exe_mysqld --no-defaults --verbose --help`;
  1171. foreach my $line (split('\n', $list))
  1172. {
  1173. # First look for version
  1174. if ( !$mysql_version_id )
  1175. {
  1176. # Look for version
  1177. my $exe_name= basename($exe_mysqld);
  1178. mtr_verbose("exe_name: $exe_name");
  1179. if ( $line =~ /^\S*$exe_name\s\sVer\s([0-9]*)\.([0-9]*)\.([0-9]*)/ )
  1180. {
  1181. #print "Major: $1 Minor: $2 Build: $3\n";
  1182. $mysql_version_id= $1*10000 + $2*100 + $3;
  1183. #print "mysql_version_id: $mysql_version_id\n";
  1184. mtr_report("MySQL Version $1.$2.$3");
  1185. }
  1186. }
  1187. else
  1188. {
  1189. if (!$found_variable_list_start)
  1190. {
  1191. # Look for start of variables list
  1192. if ( $line =~ /[\-]+\s[\-]+/ )
  1193. {
  1194. $found_variable_list_start= 1;
  1195. }
  1196. }
  1197. else
  1198. {
  1199. # Put variables into hash
  1200. if ( $line =~ /^([\S]+)[ \t]+(.*?)\r?$/ )
  1201. {
  1202. # print "$1=\"$2\"\n";
  1203. $mysqld_variables{$1}= $2;
  1204. }
  1205. else
  1206. {
  1207. # The variable list is ended with a blank line
  1208. if ( $line =~ /^[\s]*$/ )
  1209. {
  1210. last;
  1211. }
  1212. else
  1213. {
  1214. # Send out a warning, we should fix the variables that has no
  1215. # space between variable name and it's value
  1216. # or should it be fixed width column parsing? It does not
  1217. # look like that in function my_print_variables in my_getopt.c
  1218. mtr_warning("Could not parse variable list line : $line");
  1219. }
  1220. }
  1221. }
  1222. }
  1223. }
  1224. mtr_error("Could not find version of MySQL") unless $mysql_version_id;
  1225. mtr_error("Could not find variabes list") unless $found_variable_list_start;
  1226. }
  1227. sub run_query($$) {
  1228. my ($mysqld, $query)= @_;
  1229. my $args;
  1230. mtr_init_args(\$args);
  1231. mtr_add_arg($args, "--no-defaults");
  1232. mtr_add_arg($args, "--user=%s", $opt_user);
  1233. mtr_add_arg($args, "--port=%d", $mysqld->{'port'});
  1234. mtr_add_arg($args, "--socket=%s", $mysqld->{'path_sock'});
  1235. mtr_add_arg($args, "--silent"); # Tab separated output
  1236. mtr_add_arg($args, "-e '%s'", $query);
  1237. my $cmd= "$exe_mysql " . join(' ', @$args);
  1238. mtr_verbose("cmd: $cmd");
  1239. return `$cmd`;
  1240. }
  1241. sub collect_mysqld_features_from_running_server ()
  1242. {
  1243. my $list= run_query($master->[0], "use mysql; SHOW VARIABLES");
  1244. foreach my $line (split('\n', $list))
  1245. {
  1246. # Put variables into hash
  1247. if ( $line =~ /^([\S]+)[ \t]+(.*?)\r?$/ )
  1248. {
  1249. print "$1=\"$2\"\n";
  1250. $mysqld_variables{$1}= $2;
  1251. }
  1252. }
  1253. }
  1254. sub executable_setup_im () {
  1255. # Look for instance manager binary - mysqlmanager
  1256. $exe_im=
  1257. mtr_exe_maybe_exists(
  1258. "$glob_basedir/server-tools/instance-manager/mysqlmanager",
  1259. "$glob_basedir/libexec/mysqlmanager",
  1260. "$glob_basedir/bin/mysqlmanager",
  1261. "$glob_basedir/sbin/mysqlmanager");
  1262. return ($exe_im eq "");
  1263. }
  1264. sub executable_setup_ndb () {
  1265. # Look for ndb tols and binaries
  1266. my $ndb_path= mtr_file_exists("$glob_basedir/ndb",
  1267. "$glob_basedir/storage/ndb",
  1268. "$glob_basedir/bin");
  1269. $exe_ndbd=
  1270. mtr_exe_maybe_exists("$ndb_path/src/kernel/ndbd",
  1271. "$ndb_path/ndbd");
  1272. $exe_ndb_mgm=
  1273. mtr_exe_maybe_exists("$ndb_path/src/mgmclient/ndb_mgm",
  1274. "$ndb_path/ndb_mgm");
  1275. $exe_ndb_mgmd=
  1276. mtr_exe_maybe_exists("$ndb_path/src/mgmsrv/ndb_mgmd",
  1277. "$ndb_path/ndb_mgmd");
  1278. $exe_ndb_waiter=
  1279. mtr_exe_maybe_exists("$ndb_path/tools/ndb_waiter",
  1280. "$ndb_path/ndb_waiter");
  1281. # May not exist
  1282. $path_ndb_tools_dir= mtr_file_exists("$ndb_path/tools",
  1283. "$ndb_path");
  1284. # May not exist
  1285. $path_ndb_examples_dir=
  1286. mtr_file_exists("$ndb_path/ndbapi-examples",
  1287. "$ndb_path/examples");
  1288. # May not exist
  1289. $exe_ndb_example=
  1290. mtr_file_exists("$path_ndb_examples_dir/ndbapi_simple/ndbapi_simple");
  1291. return ( $exe_ndbd eq "" or
  1292. $exe_ndb_mgm eq "" or
  1293. $exe_ndb_mgmd eq "" or
  1294. $exe_ndb_waiter eq "");
  1295. }
  1296. sub executable_setup () {
  1297. #
  1298. # Check if libtool is available in this distribution/clone
  1299. # we need it when valgrinding or debugging non installed binary
  1300. # Otherwise valgrind will valgrind the libtool wrapper or bash
  1301. # and gdb will not find the real executable to debug
  1302. #
  1303. if ( -x "../libtool")
  1304. {
  1305. $exe_libtool= "../libtool";
  1306. if ($opt_valgrind or $glob_debugger)
  1307. {
  1308. mtr_report("Using \"$exe_libtool\" when running valgrind or debugger");
  1309. }
  1310. }
  1311. # Look for language files and charsetsdir, use same share
  1312. my $path_share= mtr_path_exists("$glob_basedir/share/mysql",
  1313. "$glob_basedir/sql/share",
  1314. "$glob_basedir/share");
  1315. $path_language= mtr_path_exists("$path_share/english");
  1316. $path_charsetsdir= mtr_path_exists("$path_share/charsets");
  1317. # Look for my_print_defaults
  1318. $exe_my_print_defaults=
  1319. mtr_exe_exists(vs_config_dirs('extra', 'my_print_defaults'),
  1320. "$path_client_bindir/my_print_defaults",
  1321. "$glob_basedir/extra/my_print_defaults");
  1322. # Look for perror
  1323. $exe_perror= mtr_exe_exists(vs_config_dirs('extra', 'perror'),
  1324. "$glob_basedir/extra/perror",
  1325. "$path_client_bindir/perror");
  1326. # Look for the client binaries
  1327. $exe_mysqlcheck= mtr_exe_exists("$path_client_bindir/mysqlcheck");
  1328. $exe_mysqldump= mtr_exe_exists("$path_client_bindir/mysqldump");
  1329. $exe_mysqlimport= mtr_exe_exists("$path_client_bindir/mysqlimport");
  1330. $exe_mysqlshow= mtr_exe_exists("$path_client_bindir/mysqlshow");
  1331. $exe_mysqlbinlog= mtr_exe_exists("$path_client_bindir/mysqlbinlog");
  1332. $exe_mysqladmin= mtr_exe_exists("$path_client_bindir/mysqladmin");
  1333. $exe_mysql= mtr_exe_exists("$path_client_bindir/mysql");
  1334. if (!$opt_extern)
  1335. {
  1336. # Look for SQL scripts directory
  1337. if ( mtr_file_exists("$path_share/mysql_system_tables.sql") ne "")
  1338. {
  1339. # The SQL scripts are in path_share
  1340. $path_sql_dir= $path_share;
  1341. }
  1342. else
  1343. {
  1344. $path_sql_dir= mtr_path_exists("$glob_basedir/share",
  1345. "$glob_basedir/scripts");
  1346. }
  1347. if ( $mysql_version_id >= 50100 ) {
  1348. $exe_mysqlslap= mtr_exe_exists("$path_client_bindir/mysqlslap");
  1349. }
  1350. if ( $mysql_version_id >= 50000 and !$glob_use_embedded_server ) {
  1351. $exe_mysql_upgrade= mtr_exe_exists("$path_client_bindir/mysql_upgrade")
  1352. } else {
  1353. $exe_mysql_upgrade= "";
  1354. }
  1355. if ( ! $glob_win32 ) {
  1356. # Look for mysql_fix_system_table script
  1357. $exe_mysql_fix_system_tables=
  1358. mtr_script_exists("$glob_basedir/scripts/mysql_fix_privilege_tables",
  1359. "$path_client_bindir/mysql_fix_privilege_tables");
  1360. }
  1361. # Look for mysql_fix_privilege_tables.sql script
  1362. $file_mysql_fix_privilege_tables=
  1363. mtr_file_exists("$glob_basedir/scripts/mysql_fix_privilege_tables.sql",
  1364. "$glob_basedir/share/mysql_fix_privilege_tables.sql");
  1365. if ( ! $opt_skip_ndbcluster and executable_setup_ndb()) {
  1366. mtr_warning("Could not find all required ndb binaries, " .
  1367. "all ndb tests will fail, use --skip-ndbcluster to " .
  1368. "skip testing it.");
  1369. foreach my $cluster (@{$clusters}) {
  1370. $cluster->{"executable_setup_failed"}= 1;
  1371. }
  1372. }
  1373. if ( ! $opt_skip_im and executable_setup_im()) {
  1374. mtr_warning("Could not find all required instance manager binaries, " .
  1375. "all im tests will fail, use --skip-im to " .
  1376. "continue without instance manager");
  1377. $instance_manager->{"executable_setup_failed"}= 1;
  1378. }
  1379. # Look for the udf_example library
  1380. $lib_udf_example=
  1381. mtr_file_exists(vs_config_dirs('sql', 'udf_example.dll'),
  1382. "$glob_basedir/sql/.libs/udf_example.so",);
  1383. }
  1384. # Look for mysqltest executable
  1385. if ( $glob_use_embedded_server )
  1386. {
  1387. $exe_mysqltest=
  1388. mtr_exe_exists(vs_config_dirs('libmysqld/examples','mysqltest_embedded'),
  1389. "$glob_basedir/libmysqld/examples/mysqltest_embedded",
  1390. "$path_client_bindir/mysqltest_embedded");
  1391. }
  1392. else
  1393. {
  1394. $exe_mysqltest= mtr_exe_exists("$path_client_bindir/mysqltest");
  1395. }
  1396. # Look for mysql_client_test executable which may _not_ exist in
  1397. # some versions, test using it should be skipped
  1398. if ( $glob_use_embedded_server )
  1399. {
  1400. $exe_mysql_client_test=
  1401. mtr_exe_maybe_exists(
  1402. vs_config_dirs('libmysqld/examples', 'mysql_client_test_embedded'),
  1403. "$glob_basedir/libmysqld/examples/mysql_client_test_embedded");
  1404. }
  1405. else
  1406. {
  1407. $exe_mysql_client_test=
  1408. mtr_exe_maybe_exists(vs_config_dirs('tests', 'mysql_client_test'),
  1409. "$glob_basedir/tests/mysql_client_test",
  1410. "$glob_basedir/bin/mysql_client_test");
  1411. }
  1412. # Look for bug25714 executable which may _not_ exist in
  1413. # some versions, test using it should be skipped
  1414. $exe_bug25714=
  1415. mtr_exe_maybe_exists(vs_config_dirs('tests', 'bug25714'),
  1416. "$glob_basedir/tests/bug25714");
  1417. }
  1418. sub generate_cmdline_mysqldump ($) {
  1419. my($mysqld) = @_;
  1420. return
  1421. mtr_native_path($exe_mysqldump) .
  1422. " --no-defaults -uroot " .
  1423. "--port=$mysqld->{'port'} " .
  1424. "--socket=$mysqld->{'path_sock'} --password=";
  1425. }
  1426. ##############################################################################
  1427. #
  1428. # Set environment to be used by childs of this process for
  1429. # things that are constant duting the whole lifetime of mysql-test-run.pl
  1430. #
  1431. ##############################################################################
  1432. sub mysql_client_test_arguments()
  1433. {
  1434. my $exe= $exe_mysql_client_test;
  1435. my $args;
  1436. mtr_init_args(\$args);
  1437. if ( $opt_valgrind_mysqltest )
  1438. {
  1439. valgrind_arguments($args, \$exe);
  1440. }
  1441. mtr_add_arg($args, "--no-defaults");
  1442. mtr_add_arg($args, "--testcase");
  1443. mtr_add_arg($args, "--user=root");
  1444. mtr_add_arg($args, "--port=$master->[0]->{'port'}");
  1445. mtr_add_arg($args, "--socket=$master->[0]->{'path_sock'}");
  1446. if ( $opt_extern || $mysql_version_id >= 50000 )
  1447. {
  1448. mtr_add_arg($args, "--vardir=$opt_vardir")
  1449. }
  1450. if ( $opt_debug )
  1451. {
  1452. mtr_add_arg($args,
  1453. "--debug=d:t:A,$path_vardir_trace/log/mysql_client_test.trace");
  1454. }
  1455. if ( $glob_use_embedded_server )
  1456. {
  1457. mtr_add_arg($args,
  1458. " -A --language=$path_language");
  1459. mtr_add_arg($args,
  1460. " -A --datadir=$slave->[0]->{'path_myddir'}");
  1461. mtr_add_arg($args,
  1462. " -A --character-sets-dir=$path_charsetsdir");
  1463. }
  1464. return join(" ", $exe, @$args);
  1465. }
  1466. sub mysql_upgrade_arguments()
  1467. {
  1468. my $exe= $exe_mysql_upgrade;
  1469. my $args;
  1470. mtr_init_args(\$args);
  1471. # if ( $opt_valgrind_mysql_ugrade )
  1472. # {
  1473. # valgrind_arguments($args, \$exe);
  1474. # }
  1475. mtr_add_arg($args, "--no-defaults");
  1476. mtr_add_arg($args, "--user=root");
  1477. mtr_add_arg($args, "--port=$master->[0]->{'port'}");
  1478. mtr_add_arg($args, "--socket=$master->[0]->{'path_sock'}");
  1479. mtr_add_arg($args, "--datadir=$master->[0]->{'path_myddir'}");
  1480. mtr_add_arg($args, "--basedir=$glob_basedir");
  1481. if ( $opt_debug )
  1482. {
  1483. mtr_add_arg($args,
  1484. "--debug=d:t:A,$path_vardir_trace/log/mysql_upgrade.trace");
  1485. }
  1486. return join(" ", $exe, @$args);
  1487. }
  1488. # Note that some env is setup in spawn/run, in "mtr_process.pl"
  1489. sub environment_setup () {
  1490. umask(022);
  1491. my @ld_library_paths;
  1492. # --------------------------------------------------------------------------
  1493. # Setup LD_LIBRARY_PATH so the libraries from this distro/clone
  1494. # are used in favor of the system installed ones
  1495. # --------------------------------------------------------------------------
  1496. if ( $source_dist )
  1497. {
  1498. push(@ld_library_paths, "$glob_basedir/libmysql/.libs/",
  1499. "$glob_basedir/libmysql_r/.libs/",
  1500. "$glob_basedir/zlib.libs/");
  1501. }
  1502. else
  1503. {
  1504. push(@ld_library_paths, "$glob_basedir/lib");
  1505. }
  1506. # --------------------------------------------------------------------------
  1507. # Add the path where libndbclient can be found
  1508. # --------------------------------------------------------------------------
  1509. if ( $glob_ndbcluster_supported )
  1510. {
  1511. push(@ld_library_paths, "$glob_basedir/storage/ndb/src/.libs");
  1512. }
  1513. # --------------------------------------------------------------------------
  1514. # Add the path where mysqld will find udf_example.so
  1515. # --------------------------------------------------------------------------
  1516. if ( $lib_udf_example )
  1517. {
  1518. push(@ld_library_paths, dirname($lib_udf_example));
  1519. }
  1520. # --------------------------------------------------------------------------
  1521. # Valgrind need to be run with debug libraries otherwise it's almost
  1522. # impossible to add correct supressions, that means if "/usr/lib/debug"
  1523. # is available, it should be added to
  1524. # LD_LIBRARY_PATH
  1525. #
  1526. # But pthread is broken in libc6-dbg on Debian <= 3.1 (see Debian
  1527. # bug 399035, http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=399035),
  1528. # so don't change LD_LIBRARY_PATH on that platform.
  1529. # --------------------------------------------------------------------------
  1530. my $debug_libraries_path= "/usr/lib/debug";
  1531. my $deb_version;
  1532. if ( $opt_valgrind and -d $debug_libraries_path and
  1533. (! -e '/etc/debian_version' or
  1534. ($deb_version= mtr_grab_file('/etc/debian_version')) !~ /^[0-9]+\.[0-9]$/ or
  1535. $deb_version > 3.1 ) )
  1536. {
  1537. push(@ld_library_paths, $debug_libraries_path);
  1538. }
  1539. $ENV{'LD_LIBRARY_PATH'}= join(":", @ld_library_paths,
  1540. $ENV{'LD_LIBRARY_PATH'} ?
  1541. split(':', $ENV{'LD_LIBRARY_PATH'}) : ());
  1542. mtr_debug("LD_LIBRARY_PATH: $ENV{'LD_LIBRARY_PATH'}");
  1543. $ENV{'DYLD_LIBRARY_PATH'}= join(":", @ld_library_paths,
  1544. $ENV{'DYLD_LIBRARY_PATH'} ?
  1545. split(':', $ENV{'DYLD_LIBRARY_PATH'}) : ());
  1546. mtr_debug("DYLD_LIBRARY_PATH: $ENV{'DYLD_LIBRARY_PATH'}");
  1547. # The environment variable used for shared libs on AIX
  1548. $ENV{'SHLIB_PATH'}= join(":", @ld_library_paths,
  1549. $ENV{'SHLIB_PATH'} ?
  1550. split(':', $ENV{'SHLIB_PATH'}) : ());
  1551. mtr_debug("SHLIB_PATH: $ENV{'SHLIB_PATH'}");
  1552. # The environment variable used for shared libs on hp-ux
  1553. $ENV{'LIBPATH'}= join(":", @ld_library_paths,
  1554. $ENV{'LIBPATH'} ?
  1555. split(':', $ENV{'LIBPATH'}) : ());
  1556. mtr_debug("LIBPATH: $ENV{'LIBPATH'}");
  1557. # --------------------------------------------------------------------------
  1558. # Also command lines in .opt files may contain env vars
  1559. # --------------------------------------------------------------------------
  1560. $ENV{'CHARSETSDIR'}= $path_charsetsdir;
  1561. $ENV{'UMASK'}= "0660"; # The octal *string*
  1562. $ENV{'UMASK_DIR'}= "0770"; # The octal *string*
  1563. #
  1564. # MySQL tests can produce output in various character sets
  1565. # (especially, ctype_xxx.test). To avoid confusing Perl
  1566. # with output which is incompatible with the current locale
  1567. # settings, we reset the current values of LC_ALL and LC_CTYPE to "C".
  1568. # For details, please see
  1569. # Bug#27636 tests fails if LC_* variables set to *_*.UTF-8
  1570. #
  1571. $ENV{'LC_ALL'}= "C";
  1572. $ENV{'LC_CTYPE'}= "C";
  1573. $ENV{'LC_COLLATE'}= "C";
  1574. $ENV{'USE_RUNNING_SERVER'}= $opt_extern;
  1575. $ENV{'MYSQL_TEST_DIR'}= $glob_mysql_test_dir;
  1576. $ENV{'MYSQLTEST_VARDIR'}= $opt_vardir;
  1577. $ENV{'MYSQL_TMP_DIR'}= $opt_tmpdir;
  1578. $ENV{'MASTER_MYSOCK'}= $master->[0]->{'path_sock'};
  1579. $ENV{'MASTER_MYSOCK1'}= $master->[1]->{'path_sock'};
  1580. $ENV{'MASTER_MYPORT'}= $master->[0]->{'port'};
  1581. $ENV{'MASTER_MYPORT1'}= $master->[1]->{'port'};
  1582. $ENV{'SLAVE_MYSOCK'}= $slave->[0]->{'path_sock'};
  1583. $ENV{'SLAVE_MYPORT'}= $slave->[0]->{'port'};
  1584. $ENV{'SLAVE_MYPORT1'}= $slave->[1]->{'port'};
  1585. $ENV{'SLAVE_MYPORT2'}= $slave->[2]->{'port'};
  1586. $ENV{'MYSQL_TCP_PORT'}= $mysqld_variables{'port'};
  1587. $ENV{'DEFAULT_MASTER_PORT'}= $mysqld_variables{'master-port'};
  1588. $ENV{'IM_PATH_SOCK'}= $instance_manager->{path_sock};
  1589. $ENV{'IM_USERNAME'}= $instance_manager->{admin_login};
  1590. $ENV{'IM_PASSWORD'}= $instance_manager->{admin_password};
  1591. $ENV{MTR_BUILD_THREAD}= $opt_mtr_build_thread;
  1592. $ENV{'EXE_MYSQL'}= $exe_mysql;
  1593. # ----------------------------------------------------
  1594. # Setup env for NDB
  1595. # ----------------------------------------------------
  1596. if ( ! $opt_skip_ndbcluster )
  1597. {
  1598. $ENV{'NDB_MGM'}= $exe_ndb_mgm;
  1599. $ENV{'NDBCLUSTER_PORT'}= $opt_ndbcluster_port;
  1600. $ENV{'NDBCLUSTER_PORT_SLAVE'}= $opt_ndbcluster_port_slave;
  1601. $ENV{'NDB_EXTRA_TEST'}= $opt_ndb_extra_test;
  1602. $ENV{'NDB_BACKUP_DIR'}= $clusters->[0]->{'data_dir'};
  1603. $ENV{'NDB_DATA_DIR'}= $clusters->[0]->{'data_dir'};
  1604. $ENV{'NDB_TOOLS_DIR'}= $path_ndb_tools_dir;
  1605. $ENV{'NDB_TOOLS_OUTPUT'}= $path_ndb_testrun_log;
  1606. $ENV{'NDB_CONNECTSTRING'}= $opt_ndbconnectstring;
  1607. if ( $mysql_version_id >= 50000 )
  1608. {
  1609. $ENV{'NDB_EXAMPLES_DIR'}= $path_ndb_examples_dir;
  1610. $ENV{'MY_NDB_EXAMPLES_BINARY'}= $exe_ndb_example;
  1611. }
  1612. $ENV{'NDB_EXAMPLES_OUTPUT'}= $path_ndb_testrun_log;
  1613. }
  1614. # ----------------------------------------------------
  1615. # Setup env for IM
  1616. # ----------------------------------------------------
  1617. if ( ! $opt_skip_im )
  1618. {
  1619. $ENV{'IM_EXE'}= $exe_im;
  1620. $ENV{'IM_PATH_PID'}= $instance_manager->{path_pid};
  1621. $ENV{'IM_PATH_ANGEL_PID'}= $instance_manager->{path_angel_pid};
  1622. $ENV{'IM_PORT'}= $instance_manager->{port};
  1623. $ENV{'IM_DEFAULTS_PATH'}= $instance_manager->{defaults_file};
  1624. $ENV{'IM_PASSWORD_PATH'}= $instance_manager->{password_file};
  1625. $ENV{'IM_MYSQLD1_SOCK'}=
  1626. $instance_manager->{instances}->[0]->{path_sock};
  1627. $ENV{'IM_MYSQLD1_PORT'}=
  1628. $instance_manager->{instances}->[0]->{port};
  1629. $ENV{'IM_MYSQLD1_PATH_PID'}=
  1630. $instance_manager->{instances}->[0]->{path_pid};
  1631. $ENV{'IM_MYSQLD2_SOCK'}=
  1632. $instance_manager->{instances}->[1]->{path_sock};
  1633. $ENV{'IM_MYSQLD2_PORT'}=
  1634. $instance_manager->{instances}->[1]->{port};
  1635. $ENV{'IM_MYSQLD2_PATH_PID'}=
  1636. $instance_manager->{instances}->[1]->{path_pid};
  1637. }
  1638. # ----------------------------------------------------
  1639. # Setup env so childs can execute mysqlcheck
  1640. # ----------------------------------------------------
  1641. my $cmdline_mysqlcheck=
  1642. mtr_native_path($exe_mysqlcheck) .
  1643. " --no-defaults -uroot " .
  1644. "--port=$master->[0]->{'port'} " .
  1645. "--socket=$master->[0]->{'path_sock'} --password=";
  1646. if ( $opt_debug )
  1647. {
  1648. $cmdline_mysqlcheck .=
  1649. " --debug=d:t:A,$path_vardir_trace/log/mysqlcheck.trace";
  1650. }
  1651. $ENV{'MYSQL_CHECK'}= $cmdline_mysqlcheck;
  1652. # ----------------------------------------------------
  1653. # Setup env to childs can execute myqldump
  1654. # ----------------------------------------------------
  1655. my $cmdline_mysqldump= generate_cmdline_mysqldump($master->[0]);
  1656. my $cmdline_mysqldumpslave= generate_cmdline_mysqldump($slave->[0]);
  1657. if ( $opt_debug )
  1658. {
  1659. $cmdline_mysqldump .=
  1660. " --debug=d:t:A,$path_vardir_trace/log/mysqldump-master.trace";
  1661. $cmdline_mysqldumpslave .=
  1662. " --debug=d:t:A,$path_vardir_trace/log/mysqldump-slave.trace";
  1663. }
  1664. $ENV{'MYSQL_DUMP'}= $cmdline_mysqldump;
  1665. $ENV{'MYSQL_DUMP_SLAVE'}= $cmdline_mysqldumpslave;
  1666. # ----------------------------------------------------
  1667. # Setup env so childs can execute mysqlslap
  1668. # ----------------------------------------------------
  1669. if ( $exe_mysqlslap )
  1670. {
  1671. my $cmdline_mysqlslap=
  1672. mtr_native_path($exe_mysqlslap) .
  1673. " -uroot " .
  1674. "--port=$master->[0]->{'port'} " .
  1675. "--socket=$master->[0]->{'path_sock'} --password= " .
  1676. "--lock-directory=$opt_tmpdir";
  1677. if ( $opt_debug )
  1678. {
  1679. $cmdline_mysqlslap .=
  1680. " --debug=d:t:A,$path_vardir_trace/log/mysqlslap.trace";
  1681. }
  1682. $ENV{'MYSQL_SLAP'}= $cmdline_mysqlslap;
  1683. }
  1684. # ----------------------------------------------------
  1685. # Setup env so childs can execute mysqlimport
  1686. # ----------------------------------------------------
  1687. my $cmdline_mysqlimport=
  1688. mtr_native_path($exe_mysqlimport) .
  1689. " -uroot " .
  1690. "--port=$master->[0]->{'port'} " .
  1691. "--socket=$master->[0]->{'path_sock'} --password=";
  1692. if ( $opt_debug )
  1693. {
  1694. $cmdline_mysqlimport .=
  1695. " --debug=d:t:A,$path_vardir_trace/log/mysqlimport.trace";
  1696. }
  1697. $ENV{'MYSQL_IMPORT'}= $cmdline_mysqlimport;
  1698. # ----------------------------------------------------
  1699. # Setup env so childs can execute mysqlshow
  1700. # ----------------------------------------------------
  1701. my $cmdline_mysqlshow=
  1702. mtr_native_path($exe_mysqlshow) .
  1703. " -uroot " .
  1704. "--port=$master->[0]->{'port'} " .
  1705. "--socket=$master->[0]->{'path_sock'} --password=";
  1706. if ( $opt_debug )
  1707. {
  1708. $cmdline_mysqlshow .=
  1709. " --debug=d:t:A,$path_vardir_trace/log/mysqlshow.trace";
  1710. }
  1711. $ENV{'MYSQL_SHOW'}= $cmdline_mysqlshow;
  1712. # ----------------------------------------------------
  1713. # Setup env so childs can execute mysqlbinlog
  1714. # ----------------------------------------------------
  1715. my $cmdline_mysqlbinlog=
  1716. mtr_native_path($exe_mysqlbinlog) .
  1717. " --no-defaults";
  1718. if (!$opt_extern && $mysql_version_id >= 50000 )
  1719. {
  1720. $cmdline_mysqlbinlog .=" --character-sets-dir=$path_charsetsdir";
  1721. }
  1722. if ( $opt_debug )
  1723. {
  1724. $cmdline_mysqlbinlog .=
  1725. " --debug=d:t:A,$path_vardir_trace/log/mysqlbinlog.trace";
  1726. }
  1727. $ENV{'MYSQL_BINLOG'}= $cmdline_mysqlbinlog;
  1728. # ----------------------------------------------------
  1729. # Setup env so childs can execute mysql
  1730. # ----------------------------------------------------
  1731. my $cmdline_mysql=
  1732. mtr_native_path($exe_mysql) .
  1733. " --no-defaults --host=localhost --user=root --password= " .
  1734. "--port=$master->[0]->{'port'} " .
  1735. "--socket=$master->[0]->{'path_sock'} ".
  1736. "--character-sets-dir=$path_charsetsdir";
  1737. $ENV{'MYSQL'}= $cmdline_mysql;
  1738. # ----------------------------------------------------
  1739. # Setup env so childs can execute bug25714
  1740. # ----------------------------------------------------
  1741. $ENV{'MYSQL_BUG25714'}= $exe_bug25714;
  1742. # ----------------------------------------------------
  1743. # Setup env so childs can execute mysql_client_test
  1744. # ----------------------------------------------------
  1745. $ENV{'MYSQL_CLIENT_TEST'}= mysql_client_test_arguments();
  1746. # ----------------------------------------------------
  1747. # Setup env so childs can execute mysql_upgrade
  1748. # ----------------------------------------------------
  1749. if ( !$opt_extern && $mysql_version_id >= 50000 )
  1750. {
  1751. $ENV{'MYSQL_UPGRADE'}= mysql_upgrade_arguments();
  1752. }
  1753. # ----------------------------------------------------
  1754. # Setup env so childs can execute mysql_fix_system_tables
  1755. # ----------------------------------------------------
  1756. if ( !$opt_extern && ! $glob_win32 )
  1757. {
  1758. my $cmdline_mysql_fix_system_tables=
  1759. "$exe_mysql_fix_system_tables --no-defaults --host=localhost " .
  1760. "--user=root --password= " .
  1761. "--basedir=$glob_basedir --bindir=$path_client_bindir --verbose " .
  1762. "--port=$master->[0]->{'port'} " .
  1763. "--socket=$master->[0]->{'path_sock'}";
  1764. $ENV{'MYSQL_FIX_SYSTEM_TABLES'}= $cmdline_mysql_fix_system_tables;
  1765. }
  1766. $ENV{'MYSQL_FIX_PRIVILEGE_TABLES'}= $file_mysql_fix_privilege_tables;
  1767. # ----------------------------------------------------
  1768. # Setup env so childs can execute my_print_defaults
  1769. # ----------------------------------------------------
  1770. $ENV{'MYSQL_MY_PRINT_DEFAULTS'}= mtr_native_path($exe_my_print_defaults);
  1771. # ----------------------------------------------------
  1772. # Setup env so childs can execute mysqladmin
  1773. # ----------------------------------------------------
  1774. $ENV{'MYSQLADMIN'}= mtr_native_path($exe_mysqladmin);
  1775. # ----------------------------------------------------
  1776. # Setup env so childs can execute perror
  1777. # ----------------------------------------------------
  1778. $ENV{'MY_PERROR'}= mtr_native_path($exe_perror);
  1779. # ----------------------------------------------------
  1780. # Add the path where mysqld will find udf_example.so
  1781. # ----------------------------------------------------
  1782. $ENV{'UDF_EXAMPLE_LIB'}=
  1783. ($lib_udf_example ? basename($lib_udf_example) : "");
  1784. $ENV{'LD_LIBRARY_PATH'}=
  1785. ($lib_udf_example ? dirname($lib_udf_example) : "") .
  1786. ($ENV{'LD_LIBRARY_PATH'} ? ":$ENV{'LD_LIBRARY_PATH'}" : "");
  1787. # ----------------------------------------------------
  1788. # We are nice and report a bit about our settings
  1789. # ----------------------------------------------------
  1790. if (!$opt_extern)
  1791. {
  1792. print "Using MTR_BUILD_THREAD = $ENV{MTR_BUILD_THREAD}\n";
  1793. print "Using MASTER_MYPORT = $ENV{MASTER_MYPORT}\n";
  1794. print "Using MASTER_MYPORT1 = $ENV{MASTER_MYPORT1}\n";
  1795. print "Using SLAVE_MYPORT = $ENV{SLAVE_MYPORT}\n";
  1796. print "Using SLAVE_MYPORT1 = $ENV{SLAVE_MYPORT1}\n";
  1797. print "Using SLAVE_MYPORT2 = $ENV{SLAVE_MYPORT2}\n";
  1798. if ( ! $opt_skip_ndbcluster )
  1799. {
  1800. print "Using NDBCLUSTER_PORT = $ENV{NDBCLUSTER_PORT}\n";
  1801. if ( ! $opt_skip_ndbcluster_slave )
  1802. {
  1803. print "Using NDBCLUSTER_PORT_SLAVE = $ENV{NDBCLUSTER_PORT_SLAVE}\n";
  1804. }
  1805. }
  1806. if ( ! $opt_skip_im )
  1807. {
  1808. print "Using IM_PORT = $ENV{IM_PORT}\n";
  1809. print "Using IM_MYSQLD1_PORT = $ENV{IM_MYSQLD1_PORT}\n";
  1810. print "Using IM_MYSQLD2_PORT = $ENV{IM_MYSQLD2_PORT}\n";
  1811. }
  1812. }
  1813. # Create an environment variable to make it possible
  1814. # to detect that valgrind is being used from test cases
  1815. $ENV{'VALGRIND_TEST'}= $opt_valgrind;
  1816. }
  1817. ##############################################################################
  1818. #
  1819. # If we get a ^C, we try to clean up before termination
  1820. #
  1821. ##############################################################################
  1822. # FIXME check restrictions what to do in a signal handler
  1823. sub signal_setup () {
  1824. $SIG{INT}= \&handle_int_signal;
  1825. }
  1826. sub handle_int_signal () {
  1827. $SIG{INT}= 'DEFAULT'; # If we get a ^C again, we die...
  1828. mtr_warning("got INT signal, cleaning up.....");
  1829. stop_all_servers();
  1830. mtr_error("We die from ^C signal from user");
  1831. }
  1832. ##############################################################################
  1833. #
  1834. # Handle left overs from previous runs
  1835. #
  1836. ##############################################################################
  1837. sub kill_running_servers () {
  1838. if ( $opt_fast or $glob_use_embedded_server )
  1839. {
  1840. # FIXME is embedded server really using PID files?!
  1841. unlink($master->[0]->{'path_pid'});
  1842. unlink($master->[1]->{'path_pid'});
  1843. unlink($slave->[0]->{'path_pid'});
  1844. unlink($slave->[1]->{'path_pid'});
  1845. unlink($slave->[2]->{'path_pid'});
  1846. }
  1847. else
  1848. {
  1849. # Ensure that no old mysqld test servers are running
  1850. # This is different from terminating processes we have
  1851. # started from this run of the script, this is terminating
  1852. # leftovers from previous runs.
  1853. mtr_kill_leftovers();
  1854. }
  1855. }
  1856. #
  1857. # Remove var and any directories in var/ created by previous
  1858. # tests
  1859. #
  1860. sub remove_stale_vardir () {
  1861. mtr_report("Removing Stale Files");
  1862. # Safety!
  1863. mtr_error("No, don't remove the vardir when running with --extern")
  1864. if $opt_extern;
  1865. mtr_verbose("opt_vardir: $opt_vardir");
  1866. if ( $opt_vardir eq $default_vardir )
  1867. {
  1868. #
  1869. # Running with "var" in mysql-test dir
  1870. #
  1871. if ( -l $opt_vardir)
  1872. {
  1873. # var is a symlink
  1874. if ( $opt_mem and readlink($opt_vardir) eq $opt_mem )
  1875. {
  1876. # Remove the directory which the link points at
  1877. mtr_verbose("Removing " . readlink($opt_vardir));
  1878. rmtree(readlink($opt_vardir));
  1879. # Remove the "var" symlink
  1880. mtr_verbose("unlink($opt_vardir)");
  1881. unlink($opt_vardir);
  1882. }
  1883. elsif ( $opt_mem )
  1884. {
  1885. # Just remove the "var" symlink
  1886. mtr_report("WARNING: Removing '$opt_vardir' symlink it's wrong");
  1887. mtr_verbose("unlink($opt_vardir)");
  1888. unlink($opt_vardir);
  1889. }
  1890. else
  1891. {
  1892. # Some users creates a soft link in mysql-test/var to another area
  1893. # - allow it, but remove all files in it
  1894. mtr_report("WARNING: Using the 'mysql-test/var' symlink");
  1895. # Make sure the directory where it points exist
  1896. mtr_error("The destination for symlink $opt_vardir does not exist")
  1897. if ! -d readlink($opt_vardir);
  1898. foreach my $bin ( glob("$opt_vardir/*") )
  1899. {
  1900. mtr_verbose("Removing bin $bin");
  1901. rmtree($bin);
  1902. }
  1903. }
  1904. }
  1905. else
  1906. {
  1907. # Remove the entire "var" dir
  1908. mtr_verbose("Removing $opt_vardir/");
  1909. rmtree("$opt_vardir/");
  1910. }
  1911. if ( $opt_mem )
  1912. {
  1913. # A symlink from var/ to $opt_mem will be set up
  1914. # remove the $opt_mem dir to assure the symlink
  1915. # won't point at an old directory
  1916. mtr_verbose("Removing $opt_mem");
  1917. rmtree($opt_mem);
  1918. }
  1919. }
  1920. else
  1921. {
  1922. #
  1923. # Running with "var" in some other place
  1924. #
  1925. # Remove the var/ dir in mysql-test dir if any
  1926. # this could be an old symlink that shouldn't be there
  1927. mtr_verbose("Removing $default_vardir");
  1928. rmtree($default_vardir);
  1929. # Remove the "var" dir
  1930. mtr_verbose("Removing $opt_vardir/");
  1931. rmtree("$opt_vardir/");
  1932. }
  1933. }
  1934. #
  1935. # Create var and the directories needed in var
  1936. #
  1937. sub setup_vardir() {
  1938. mtr_report("Creating Directories");
  1939. if ( $opt_vardir eq $default_vardir )
  1940. {
  1941. #
  1942. # Running with "var" in mysql-test dir
  1943. #
  1944. if ( -l $opt_vardir )
  1945. {
  1946. # it's a symlink
  1947. # Make sure the directory where it points exist
  1948. mtr_error("The destination for symlink $opt_vardir does not exist")
  1949. if ! -d readlink($opt_vardir);
  1950. }
  1951. elsif ( $opt_mem )
  1952. {
  1953. # Runinng with "var" as a link to some "memory" location, normally tmpfs
  1954. mtr_verbose("Creating $opt_mem");
  1955. mkpath($opt_mem);
  1956. mtr_report("Symlinking 'var' to '$opt_mem'");
  1957. symlink($opt_mem, $opt_vardir);
  1958. }
  1959. }
  1960. if ( ! -d $opt_vardir )
  1961. {
  1962. mtr_verbose("Creating $opt_vardir");
  1963. mkpath($opt_vardir);
  1964. }
  1965. # Ensure a proper error message if vardir couldn't be created
  1966. unless ( -d $opt_vardir and -w $opt_vardir )
  1967. {
  1968. mtr_error("Writable 'var' directory is needed, use the " .
  1969. "'--vardir=<path>' option");
  1970. }
  1971. mkpath("$opt_vardir/log");
  1972. mkpath("$opt_vardir/run");
  1973. mkpath("$opt_vardir/tmp");
  1974. mkpath($opt_tmpdir) if $opt_tmpdir ne "$opt_vardir/tmp";
  1975. # Create new data dirs
  1976. foreach my $data_dir (@data_dir_lst)
  1977. {
  1978. mkpath("$data_dir/mysql");
  1979. mkpath("$data_dir/test");
  1980. }
  1981. # Make a link std_data_ln in var/ that points to std_data
  1982. if ( ! $glob_win32 )
  1983. {
  1984. symlink("$glob_mysql_test_dir/std_data", "$opt_vardir/std_data_ln");
  1985. }
  1986. else
  1987. {
  1988. # on windows, copy all files from std_data into var/std_data_ln
  1989. mkpath("$opt_vardir/std_data_ln");
  1990. opendir(DIR, "$glob_mysql_test_dir/std_data")
  1991. or mtr_error("Can't find the std_data directory: $!");
  1992. for(readdir(DIR)) {
  1993. next if -d "$glob_mysql_test_dir/std_data/$_";
  1994. copy("$glob_mysql_test_dir/std_data/$_", "$opt_vardir/std_data_ln/$_");
  1995. }
  1996. closedir(DIR);
  1997. }
  1998. # Remove old log files
  1999. foreach my $name (glob("r/*.progress r/*.log r/*.warnings"))
  2000. {
  2001. unlink($name);
  2002. }
  2003. }
  2004. sub check_running_as_root () {
  2005. # Check if running as root
  2006. # i.e a file can be read regardless what mode we set it to
  2007. my $test_file= "$opt_vardir/test_running_as_root.txt";
  2008. mtr_tofile($test_file, "MySQL");
  2009. chmod(oct("0000"), $test_file);
  2010. my $result="";
  2011. if (open(FILE,"<",$test_file))
  2012. {
  2013. $result= join('', <FILE>);
  2014. close FILE;
  2015. }
  2016. # Some filesystems( for example CIFS) allows reading a file
  2017. # although mode was set to 0000, but in that case a stat on
  2018. # the file will not return 0000
  2019. my $file_mode= (stat($test_file))[2] & 07777;
  2020. $ENV{'MYSQL_TEST_ROOT'}= "NO";
  2021. mtr_verbose("result: $result, file_mode: $file_mode");
  2022. if ($result eq "MySQL" && $file_mode == 0)
  2023. {
  2024. mtr_warning("running this script as _root_ will cause some " .
  2025. "tests to be skipped");
  2026. $ENV{'MYSQL_TEST_ROOT'}= "YES";
  2027. }
  2028. chmod(oct("0755"), $test_file);
  2029. unlink($test_file);
  2030. }
  2031. sub check_ssl_support ($) {
  2032. my $mysqld_variables= shift;
  2033. if ($opt_skip_ssl || $opt_extern)
  2034. {
  2035. if (!$opt_extern)
  2036. {
  2037. mtr_report("Skipping SSL");
  2038. }
  2039. $opt_ssl_supported= 0;
  2040. $opt_ssl= 0;
  2041. return;
  2042. }
  2043. if ( ! $mysqld_variables->{'ssl'} )
  2044. {
  2045. if ( $opt_ssl)
  2046. {
  2047. mtr_error("Couldn't find support for SSL");
  2048. return;
  2049. }
  2050. mtr_report("Skipping SSL, mysqld not compiled with SSL");
  2051. $opt_ssl_supported= 0;
  2052. $opt_ssl= 0;
  2053. return;
  2054. }
  2055. mtr_report("Setting mysqld to support SSL connections");
  2056. $opt_ssl_supported= 1;
  2057. }
  2058. sub check_debug_support ($) {
  2059. my $mysqld_variables= shift;
  2060. if ( ! $mysqld_variables->{'debug'} )
  2061. {
  2062. #mtr_report("Binaries are not debug compiled");
  2063. $debug_compiled_binaries= 0;
  2064. if ( $opt_debug )
  2065. {
  2066. mtr_error("Can't use --debug, binaries does not support it");
  2067. }
  2068. return;
  2069. }
  2070. mtr_report("Binaries are debug compiled");
  2071. $debug_compiled_binaries= 1;
  2072. }
  2073. ##############################################################################
  2074. #
  2075. # Helper function to handle configuration-based subdirectories which Visual
  2076. # Studio uses for storing binaries. If opt_vs_config is set, this returns
  2077. # a path based on that setting; if not, it returns paths for the default
  2078. # /release/ and /debug/ subdirectories.
  2079. #
  2080. # $exe can be undefined, if the directory itself will be used
  2081. #
  2082. ###############################################################################
  2083. sub vs_config_dirs ($$) {
  2084. my ($path_part, $exe) = @_;
  2085. $exe = "" if not defined $exe;
  2086. if ($opt_vs_config)
  2087. {
  2088. return ("$glob_basedir/$path_part/$opt_vs_config/$exe");
  2089. }
  2090. return ("$glob_basedir/$path_part/release/$exe",
  2091. "$glob_basedir/$path_part/debug/$exe");
  2092. }
  2093. ##############################################################################
  2094. #
  2095. # Start the ndb cluster
  2096. #
  2097. ##############################################################################
  2098. sub check_ndbcluster_support ($) {
  2099. my $mysqld_variables= shift;
  2100. if ($opt_skip_ndbcluster || $opt_extern)
  2101. {
  2102. if (!$opt_extern)
  2103. {
  2104. mtr_report("Skipping ndbcluster");
  2105. }
  2106. $opt_skip_ndbcluster_slave= 1;
  2107. return;
  2108. }
  2109. if ( ! $mysqld_variables->{'ndb-connectstring'} )
  2110. {
  2111. mtr_report("Skipping ndbcluster, mysqld not compiled with ndbcluster");
  2112. $opt_skip_ndbcluster= 1;
  2113. $opt_skip_ndbcluster_slave= 1;
  2114. return;
  2115. }
  2116. $glob_ndbcluster_supported= 1;
  2117. mtr_report("Using ndbcluster when necessary, mysqld supports it");
  2118. if ( $mysql_version_id < 50100 )
  2119. {
  2120. # Slave cluster is not supported until 5.1
  2121. $opt_skip_ndbcluster_slave= 1;
  2122. }
  2123. return;
  2124. }
  2125. sub ndbcluster_start_install ($) {
  2126. my $cluster= shift;
  2127. mtr_report("Installing $cluster->{'name'} Cluster");
  2128. mkdir($cluster->{'data_dir'});
  2129. # Create a config file from template
  2130. my $ndb_no_ord=512;
  2131. my $ndb_no_attr=2048;
  2132. my $ndb_con_op=105000;
  2133. my $ndb_dmem="80M";
  2134. my $ndb_imem="24M";
  2135. my $ndb_pbmem="32M";
  2136. my $nodes= $cluster->{'nodes'};
  2137. my $ndb_host= "localhost";
  2138. my $ndb_diskless= 0;
  2139. if (!$opt_bench)
  2140. {
  2141. # Use a smaller configuration
  2142. if ( $mysql_version_id < 50100 )
  2143. {
  2144. # 4.1 and 5.0 is using a "larger" --small configuration
  2145. $ndb_no_ord=128;
  2146. $ndb_con_op=10000;
  2147. $ndb_dmem="40M";
  2148. $ndb_imem="12M";
  2149. }
  2150. else
  2151. {
  2152. $ndb_no_ord=32;
  2153. $ndb_con_op=5000;
  2154. $ndb_dmem="20M";
  2155. $ndb_imem="1M";
  2156. $ndb_pbmem="4M";
  2157. }
  2158. }
  2159. my $config_file_template= "ndb/ndb_config_${nodes}_node.ini";
  2160. my $config_file= "$cluster->{'data_dir'}/config.ini";
  2161. open(IN, $config_file_template)
  2162. or mtr_error("Can't open $config_file_template: $!");
  2163. open(OUT, ">", $config_file)
  2164. or mtr_error("Can't write to $config_file: $!");
  2165. while (<IN>)
  2166. {
  2167. chomp;
  2168. s/CHOOSE_MaxNoOfAttributes/$ndb_no_attr/;
  2169. s/CHOOSE_MaxNoOfOrderedIndexes/$ndb_no_ord/;
  2170. s/CHOOSE_MaxNoOfConcurrentOperations/$ndb_con_op/;
  2171. s/CHOOSE_DataMemory/$ndb_dmem/;
  2172. s/CHOOSE_IndexMemory/$ndb_imem/;
  2173. s/CHOOSE_Diskless/$ndb_diskless/;
  2174. s/CHOOSE_HOSTNAME_.*/$ndb_host/;
  2175. s/CHOOSE_FILESYSTEM/$cluster->{'data_dir'}/;
  2176. s/CHOOSE_PORT_MGM/$cluster->{'port'}/;
  2177. if ( $mysql_version_id < 50000 )
  2178. {
  2179. my $base_port= $cluster->{'port'} + 1;
  2180. s/CHOOSE_PORT_TRANSPORTER/$base_port/;
  2181. }
  2182. s/CHOOSE_DiskPageBufferMemory/$ndb_pbmem/;
  2183. print OUT "$_ \n";
  2184. }
  2185. close OUT;
  2186. close IN;
  2187. # Start cluster with "--initial"
  2188. ndbcluster_start($cluster, "--initial");
  2189. return 0;
  2190. }
  2191. sub ndbcluster_wait_started($$){
  2192. my $cluster= shift;
  2193. my $ndb_waiter_extra_opt= shift;
  2194. my $path_waiter_log= "$cluster->{'data_dir'}/ndb_waiter.log";
  2195. my $args;
  2196. mtr_init_args(\$args);
  2197. mtr_add_arg($args, "--no-defaults");
  2198. mtr_add_arg($args, "--core");
  2199. mtr_add_arg($args, "--ndb-connectstring=%s", $cluster->{'connect_string'});
  2200. mtr_add_arg($args, "--timeout=60");
  2201. if ($ndb_waiter_extra_opt)
  2202. {
  2203. mtr_add_arg($args, "$ndb_waiter_extra_opt");
  2204. }
  2205. # Start the ndb_waiter which will connect to the ndb_mgmd
  2206. # and poll it for state of the ndbd's, will return when
  2207. # all nodes in the cluster is started
  2208. my $res= mtr_run($exe_ndb_waiter, $args,
  2209. "", $path_waiter_log, $path_waiter_log, "");
  2210. mtr_verbose("ndbcluster_wait_started, returns: $res") if $res;
  2211. return $res;
  2212. }
  2213. sub mysqld_wait_started($){
  2214. my $mysqld= shift;
  2215. if (sleep_until_file_created($mysqld->{'path_pid'},
  2216. $mysqld->{'start_timeout'},
  2217. $mysqld->{'pid'}) == 0)
  2218. {
  2219. # Failed to wait for pid file
  2220. return 1;
  2221. }
  2222. # Get the "real pid" of the process, it will be used for killing
  2223. # the process in ActiveState's perl on windows
  2224. $mysqld->{'real_pid'}= mtr_get_pid_from_file($mysqld->{'path_pid'});
  2225. return 0;
  2226. }
  2227. sub ndb_mgmd_wait_started($) {
  2228. my ($cluster)= @_;
  2229. my $retries= 100;
  2230. while (ndbcluster_wait_started($cluster, "--no-contact") and
  2231. $retries)
  2232. {
  2233. # Millisceond sleep emulated with select
  2234. select(undef, undef, undef, (0.1));
  2235. $retries--;
  2236. }
  2237. return $retries == 0;
  2238. }
  2239. sub ndb_mgmd_start ($) {
  2240. my $cluster= shift;
  2241. my $args; # Arg vector
  2242. my $pid= -1;
  2243. mtr_init_args(\$args);
  2244. mtr_add_arg($args, "--no-defaults");
  2245. mtr_add_arg($args, "--core");
  2246. mtr_add_arg($args, "--nodaemon");
  2247. mtr_add_arg($args, "--config-file=%s", "$cluster->{'data_dir'}/config.ini");
  2248. my $path_ndb_mgmd_log= "$cluster->{'data_dir'}/\l$cluster->{'name'}_ndb_mgmd.log";
  2249. $pid= mtr_spawn($exe_ndb_mgmd, $args, "",
  2250. $path_ndb_mgmd_log,
  2251. $path_ndb_mgmd_log,
  2252. "",
  2253. { append_log_file => 1 });
  2254. # FIXME Should not be needed
  2255. # Unfortunately the cluster nodes will fail to start
  2256. # if ndb_mgmd has not started properly
  2257. if (ndb_mgmd_wait_started($cluster))
  2258. {
  2259. mtr_error("Failed to wait for start of ndb_mgmd");
  2260. }
  2261. # Remember pid of ndb_mgmd
  2262. $cluster->{'pid'}= $pid;
  2263. mtr_verbose("ndb_mgmd_start, pid: $pid");
  2264. return $pid;
  2265. }
  2266. sub ndbd_start ($$$) {
  2267. my $cluster= shift;
  2268. my $idx= shift;
  2269. my $extra_args= shift;
  2270. my $args; # Arg vector
  2271. my $pid= -1;
  2272. mtr_init_args(\$args);
  2273. mtr_add_arg($args, "--no-defaults");
  2274. mtr_add_arg($args, "--core");
  2275. mtr_add_arg($args, "--ndb-connectstring=%s", "$cluster->{'connect_string'}");
  2276. if ( $mysql_version_id >= 50000)
  2277. {
  2278. mtr_add_arg($args, "--character-sets-dir=%s", "$path_charsetsdir");
  2279. }
  2280. mtr_add_arg($args, "--nodaemon");
  2281. mtr_add_arg($args, "$extra_args");
  2282. my $nodeid= $cluster->{'ndbds'}->[$idx]->{'nodeid'};
  2283. my $path_ndbd_log= "$cluster->{'data_dir'}/ndb_${nodeid}.log";
  2284. $pid= mtr_spawn($exe_ndbd, $args, "",
  2285. $path_ndbd_log,
  2286. $path_ndbd_log,
  2287. "",
  2288. { append_log_file => 1 });
  2289. # Add pid to list of pids for this cluster
  2290. $cluster->{'ndbds'}->[$idx]->{'pid'}= $pid;
  2291. # Rememeber options used when starting
  2292. $cluster->{'ndbds'}->[$idx]->{'start_extra_args'}= $extra_args;
  2293. $cluster->{'ndbds'}->[$idx]->{'idx'}= $idx;
  2294. mtr_verbose("ndbd_start, pid: $pid");
  2295. return $pid;
  2296. }
  2297. sub ndbcluster_start ($$) {
  2298. my $cluster= shift;
  2299. my $extra_args= shift;
  2300. mtr_verbose("ndbcluster_start '$cluster->{'name'}'");
  2301. if ( $glob_use_running_ndbcluster )
  2302. {
  2303. return 0;
  2304. }
  2305. if ( $cluster->{'pid'} )
  2306. {
  2307. mtr_error("Cluster '$cluster->{'name'}' already started");
  2308. }
  2309. ndb_mgmd_start($cluster);
  2310. for ( my $idx= 0; $idx < $cluster->{'nodes'}; $idx++ )
  2311. {
  2312. ndbd_start($cluster, $idx, $extra_args);
  2313. }
  2314. return 0;
  2315. }
  2316. sub rm_ndbcluster_tables ($) {
  2317. my $dir= shift;
  2318. foreach my $bin ( glob("$dir/mysql/apply_status*"),
  2319. glob("$dir/mysql/schema*"))
  2320. {
  2321. unlink($bin);
  2322. }
  2323. }
  2324. ##############################################################################
  2325. #
  2326. # Run the benchmark suite
  2327. #
  2328. ##############################################################################
  2329. sub run_benchmarks ($) {
  2330. my $benchmark= shift;
  2331. my $args;
  2332. if ( ! $glob_use_embedded_server )
  2333. {
  2334. mysqld_start($master->[0],[],[]);
  2335. if ( ! $master->[0]->{'pid'} )
  2336. {
  2337. mtr_error("Can't start the mysqld server");
  2338. }
  2339. }
  2340. mtr_init_args(\$args);
  2341. mtr_add_arg($args, "--socket=%s", $master->[0]->{'path_sock'});
  2342. mtr_add_arg($args, "--user=%s", $opt_user);
  2343. if ( $opt_small_bench )
  2344. {
  2345. mtr_add_arg($args, "--small-test");
  2346. mtr_add_arg($args, "--small-tables");
  2347. }
  2348. if ( $opt_with_ndbcluster )
  2349. {
  2350. mtr_add_arg($args, "--create-options=TYPE=ndb");
  2351. }
  2352. chdir($glob_mysql_bench_dir)
  2353. or mtr_error("Couldn't chdir to '$glob_mysql_bench_dir': $!");
  2354. if ( ! $benchmark )
  2355. {
  2356. mtr_add_arg($args, "--log");
  2357. mtr_run("$glob_mysql_bench_dir/run-all-tests", $args, "", "", "", "");
  2358. # FIXME check result code?!
  2359. }
  2360. elsif ( -x $benchmark )
  2361. {
  2362. mtr_run("$glob_mysql_bench_dir/$benchmark", $args, "", "", "", "");
  2363. # FIXME check result code?!
  2364. }
  2365. else
  2366. {
  2367. mtr_error("Benchmark $benchmark not found");
  2368. }
  2369. chdir($glob_mysql_test_dir); # Go back
  2370. if ( ! $glob_use_embedded_server )
  2371. {
  2372. stop_masters();
  2373. }
  2374. }
  2375. ##############################################################################
  2376. #
  2377. # Run the test suite
  2378. #
  2379. ##############################################################################
  2380. sub run_suite () {
  2381. my ($suite, $tests)= @_;
  2382. mtr_print_thick_line();
  2383. mtr_timer_start($glob_timers,"suite", 60 * $opt_suite_timeout);
  2384. mtr_report("Starting Tests in the '$suite' suite");
  2385. mtr_report_tests_not_skipped_though_disabled($tests);
  2386. mtr_print_header();
  2387. foreach my $tinfo ( @$tests )
  2388. {
  2389. if (run_testcase_check_skip_test($tinfo))
  2390. {
  2391. next;
  2392. }
  2393. mtr_timer_start($glob_timers,"testcase", 60 * $opt_testcase_timeout);
  2394. run_testcase($tinfo);
  2395. mtr_timer_stop($glob_timers,"testcase");
  2396. }
  2397. mtr_print_line();
  2398. if ( ! $glob_debugger and
  2399. ! $opt_extern and
  2400. ! $glob_use_embedded_server )
  2401. {
  2402. stop_all_servers();
  2403. }
  2404. if ( $opt_gcov )
  2405. {
  2406. gcov_collect(); # collect coverage information
  2407. }
  2408. if ( $opt_gprof )
  2409. {
  2410. gprof_collect(); # collect coverage information
  2411. }
  2412. mtr_report_stats($tests);
  2413. mtr_timer_stop($glob_timers,"suite");
  2414. }
  2415. ##############################################################################
  2416. #
  2417. # Initiate the test databases
  2418. #
  2419. ##############################################################################
  2420. sub initialize_servers () {
  2421. datadir_list_setup();
  2422. if ( $opt_extern )
  2423. {
  2424. # Running against an already started server, if the specified
  2425. # vardir does not already exist it should be created
  2426. if ( ! -d $opt_vardir )
  2427. {
  2428. mtr_report("Creating '$opt_vardir'");
  2429. setup_vardir();
  2430. }
  2431. else
  2432. {
  2433. if ($opt_verbose)
  2434. {
  2435. mtr_report("No need to create '$opt_vardir' it already exists");
  2436. }
  2437. }
  2438. }
  2439. else
  2440. {
  2441. kill_running_servers();
  2442. if ( ! $opt_start_dirty )
  2443. {
  2444. remove_stale_vardir();
  2445. setup_vardir();
  2446. mysql_install_db();
  2447. if ( $opt_force )
  2448. {
  2449. # Save a snapshot of the freshly installed db
  2450. # to make it possible to restore to a known point in time
  2451. save_installed_db();
  2452. }
  2453. }
  2454. }
  2455. check_running_as_root();
  2456. }
  2457. sub mysql_install_db () {
  2458. install_db('master', $master->[0]->{'path_myddir'});
  2459. if ($max_master_num)
  2460. {
  2461. copy_install_db('master', $master->[1]->{'path_myddir'});
  2462. }
  2463. # Install the number of slave databses needed
  2464. for (my $idx= 0; $idx < $max_slave_num; $idx++)
  2465. {
  2466. copy_install_db("slave".($idx+1), $slave->[$idx]->{'path_myddir'});
  2467. }
  2468. if ( ! $opt_skip_im )
  2469. {
  2470. im_prepare_env($instance_manager);
  2471. }
  2472. my $cluster_started_ok= 1; # Assume it can be started
  2473. if ($opt_skip_ndbcluster || $glob_use_running_ndbcluster ||
  2474. $clusters->[0]->{executable_setup_failed})
  2475. {
  2476. # Don't install master cluster
  2477. }
  2478. elsif (ndbcluster_start_install($clusters->[0]))
  2479. {
  2480. mtr_warning("Failed to start install of $clusters->[0]->{name}");
  2481. $cluster_started_ok= 0;
  2482. }
  2483. if ($max_slave_num == 0 ||
  2484. $opt_skip_ndbcluster_slave || $glob_use_running_ndbcluster_slave ||
  2485. $clusters->[1]->{executable_setup_failed})
  2486. {
  2487. # Don't install slave cluster
  2488. }
  2489. elsif (ndbcluster_start_install($clusters->[1]))
  2490. {
  2491. mtr_warning("Failed to start install of $clusters->[1]->{name}");
  2492. $cluster_started_ok= 0;
  2493. }
  2494. foreach my $cluster (@{$clusters})
  2495. {
  2496. next if !$cluster->{'pid'};
  2497. $cluster->{'installed_ok'}= 1; # Assume install suceeds
  2498. if (ndbcluster_wait_started($cluster, ""))
  2499. {
  2500. # failed to install, disable usage and flag that its no ok
  2501. mtr_report("ndbcluster_install of $cluster->{'name'} failed");
  2502. $cluster->{"installed_ok"}= 0;
  2503. $cluster_started_ok= 0;
  2504. }
  2505. }
  2506. if ( ! $cluster_started_ok )
  2507. {
  2508. if ( $opt_force)
  2509. {
  2510. # Continue without cluster
  2511. }
  2512. else
  2513. {
  2514. mtr_error("To continue, re-run with '--force'.");
  2515. }
  2516. }
  2517. return 0;
  2518. }
  2519. sub copy_install_db ($$) {
  2520. my $type= shift;
  2521. my $data_dir= shift;
  2522. mtr_report("Installing \u$type Database");
  2523. # Just copy the installed db from first master
  2524. mtr_copy_dir($master->[0]->{'path_myddir'}, $data_dir);
  2525. }
  2526. sub install_db ($$) {
  2527. my $type= shift;
  2528. my $data_dir= shift;
  2529. mtr_report("Installing \u$type Database");
  2530. my $args;
  2531. mtr_init_args(\$args);
  2532. mtr_add_arg($args, "--no-defaults");
  2533. mtr_add_arg($args, "--bootstrap");
  2534. mtr_add_arg($args, "--basedir=%s", $path_my_basedir);
  2535. mtr_add_arg($args, "--datadir=%s", $data_dir);
  2536. mtr_add_arg($args, "--skip-innodb");
  2537. mtr_add_arg($args, "--skip-ndbcluster");
  2538. mtr_add_arg($args, "--tmpdir=.");
  2539. mtr_add_arg($args, "--core-file");
  2540. if ( $opt_debug )
  2541. {
  2542. mtr_add_arg($args, "--debug=d:t:i:A,%s/log/bootstrap_%s.trace",
  2543. $path_vardir_trace, $type);
  2544. }
  2545. if ( ! $glob_netware )
  2546. {
  2547. mtr_add_arg($args, "--language=%s", $path_language);
  2548. mtr_add_arg($args, "--character-sets-dir=%s", $path_charsetsdir);
  2549. }
  2550. # If DISABLE_GRANT_OPTIONS is defined when the server is compiled (e.g.,
  2551. # configure --disable-grant-options), mysqld will not recognize the
  2552. # --bootstrap or --skip-grant-tables options. The user can set
  2553. # MYSQLD_BOOTSTRAP to the full path to a mysqld which does accept
  2554. # --bootstrap, to accommodate this.
  2555. my $exe_mysqld_bootstrap = $ENV{'MYSQLD_BOOTSTRAP'} || $exe_mysqld;
  2556. # ----------------------------------------------------------------------
  2557. # export MYSQLD_BOOTSTRAP_CMD variable containing <path>/mysqld <args>
  2558. # ----------------------------------------------------------------------
  2559. $ENV{'MYSQLD_BOOTSTRAP_CMD'}= "$exe_mysqld_bootstrap " . join(" ", @$args);
  2560. # ----------------------------------------------------------------------
  2561. # Create the bootstrap.sql file
  2562. # ----------------------------------------------------------------------
  2563. my $bootstrap_sql_file= "$opt_vardir/tmp/bootstrap.sql";
  2564. # Use the mysql database for system tables
  2565. mtr_tofile($bootstrap_sql_file, "use mysql");
  2566. # Add the offical mysql system tables
  2567. # for a production system
  2568. mtr_appendfile_to_file("$path_sql_dir/mysql_system_tables.sql",
  2569. $bootstrap_sql_file);
  2570. # Add the mysql system tables initial data
  2571. # for a production system
  2572. mtr_appendfile_to_file("$path_sql_dir/mysql_system_tables_data.sql",
  2573. $bootstrap_sql_file);
  2574. # Add test data for timezone - this is just a subset, on a real
  2575. # system these tables will be populated either by mysql_tzinfo_to_sql
  2576. # or by downloading the timezone table package from our website
  2577. mtr_appendfile_to_file("$path_sql_dir/mysql_test_data_timezone.sql",
  2578. $bootstrap_sql_file);
  2579. # Fill help tables, just an empty file when running from bk repo
  2580. # but will be replaced by a real fill_help_tables.sql when
  2581. # building the source dist
  2582. mtr_appendfile_to_file("$path_sql_dir/fill_help_tables.sql",
  2583. $bootstrap_sql_file);
  2584. # Log bootstrap command
  2585. my $path_bootstrap_log= "$opt_vardir/log/bootstrap.log";
  2586. mtr_tofile($path_bootstrap_log,
  2587. "$exe_mysqld_bootstrap " . join(" ", @$args) . "\n");
  2588. if ( mtr_run($exe_mysqld_bootstrap, $args, $bootstrap_sql_file,
  2589. $path_bootstrap_log, $path_bootstrap_log,
  2590. "", { append_log_file => 1 }) != 0 )
  2591. {
  2592. mtr_error("Error executing mysqld --bootstrap\n" .
  2593. "Could not install system database from $bootstrap_sql_file\n" .
  2594. "see $path_bootstrap_log for errors");
  2595. }
  2596. }
  2597. sub im_prepare_env($) {
  2598. my $instance_manager = shift;
  2599. im_create_passwd_file($instance_manager);
  2600. im_prepare_data_dir($instance_manager);
  2601. }
  2602. sub im_create_passwd_file($) {
  2603. my $instance_manager = shift;
  2604. my $pwd_file_path = $instance_manager->{'password_file'};
  2605. mtr_report("Creating IM password file ($pwd_file_path)");
  2606. open(OUT, ">", $pwd_file_path)
  2607. or mtr_error("Can't write to $pwd_file_path: $!");
  2608. print OUT $instance_manager->{'admin_login'}, ":",
  2609. $instance_manager->{'admin_sha1'}, "\n";
  2610. close(OUT);
  2611. }
  2612. sub im_create_defaults_file($) {
  2613. my $instance_manager = shift;
  2614. my $defaults_file = $instance_manager->{'defaults_file'};
  2615. open(OUT, ">", $defaults_file)
  2616. or mtr_error("Can't write to $defaults_file: $!");
  2617. print OUT <<EOF
  2618. [mysql]
  2619. [manager]
  2620. pid-file = $instance_manager->{path_pid}
  2621. angel-pid-file = $instance_manager->{path_angel_pid}
  2622. socket = $instance_manager->{path_sock}
  2623. port = $instance_manager->{port}
  2624. password-file = $instance_manager->{password_file}
  2625. default-mysqld-path = $exe_mysqld
  2626. EOF
  2627. ;
  2628. foreach my $instance (@{$instance_manager->{'instances'}})
  2629. {
  2630. my $server_id = $instance->{'server_id'};
  2631. print OUT <<EOF
  2632. [mysqld$server_id]
  2633. socket = $instance->{path_sock}
  2634. pid-file = $instance->{path_pid}
  2635. port = $instance->{port}
  2636. datadir = $instance->{path_datadir}
  2637. log = $instance->{path_datadir}/mysqld$server_id.log
  2638. log-error = $instance->{path_datadir}/mysqld$server_id.err.log
  2639. log-slow-queries = $instance->{path_datadir}/mysqld$server_id.slow.log
  2640. language = $path_language
  2641. character-sets-dir = $path_charsetsdir
  2642. basedir = $path_my_basedir
  2643. server_id = $server_id
  2644. shutdown-delay = 10
  2645. skip-stack-trace
  2646. skip-innodb
  2647. skip-ndbcluster
  2648. EOF
  2649. ;
  2650. if ( $mysql_version_id < 50100 )
  2651. {
  2652. print OUT "skip-bdb\n";
  2653. }
  2654. print OUT "nonguarded\n" if $instance->{'nonguarded'};
  2655. if ( $mysql_version_id >= 50100 )
  2656. {
  2657. print OUT "log-output=FILE\n" if $instance->{'old_log_format'};
  2658. }
  2659. print OUT "\n";
  2660. }
  2661. close(OUT);
  2662. }
  2663. sub im_prepare_data_dir($) {
  2664. my $instance_manager = shift;
  2665. foreach my $instance (@{$instance_manager->{'instances'}})
  2666. {
  2667. copy_install_db(
  2668. 'im_mysqld_' . $instance->{'server_id'},
  2669. $instance->{'path_datadir'});
  2670. }
  2671. }
  2672. #
  2673. # Restore snapshot of the installed slave databases
  2674. # if the snapshot exists
  2675. #
  2676. sub restore_slave_databases ($) {
  2677. my ($num_slaves)= @_;
  2678. if ( -d $path_snapshot)
  2679. {
  2680. for (my $idx= 0; $idx < $num_slaves; $idx++)
  2681. {
  2682. my $data_dir= $slave->[$idx]->{'path_myddir'};
  2683. my $name= basename($data_dir);
  2684. rmtree($data_dir);
  2685. mtr_copy_dir("$path_snapshot/$name", $data_dir);
  2686. }
  2687. }
  2688. }
  2689. sub run_testcase_check_skip_test($)
  2690. {
  2691. my ($tinfo)= @_;
  2692. # ----------------------------------------------------------------------
  2693. # If marked to skip, just print out and return.
  2694. # Note that a test case not marked as 'skip' can still be
  2695. # skipped later, because of the test case itself in cooperation
  2696. # with the mysqltest program tells us so.
  2697. # ----------------------------------------------------------------------
  2698. if ( $tinfo->{'skip'} )
  2699. {
  2700. mtr_report_test_name($tinfo);
  2701. mtr_report_test_skipped($tinfo);
  2702. return 1;
  2703. }
  2704. if ($tinfo->{'ndb_test'})
  2705. {
  2706. foreach my $cluster (@{$clusters})
  2707. {
  2708. last if ($opt_skip_ndbcluster_slave and
  2709. $cluster->{'name'} eq 'Slave');
  2710. # If test needs this cluster, check binaries was found ok
  2711. if ( $cluster->{'executable_setup_failed'} )
  2712. {
  2713. mtr_report_test_name($tinfo);
  2714. $tinfo->{comment}=
  2715. "Failed to find cluster binaries";
  2716. mtr_report_test_failed($tinfo);
  2717. return 1;
  2718. }
  2719. # If test needs this cluster, check it was installed ok
  2720. if ( !$cluster->{'installed_ok'} )
  2721. {
  2722. mtr_report_test_name($tinfo);
  2723. $tinfo->{comment}=
  2724. "Cluster $cluster->{'name'} was not installed ok";
  2725. mtr_report_test_failed($tinfo);
  2726. return 1;
  2727. }
  2728. }
  2729. }
  2730. if ( $tinfo->{'component_id'} eq 'im' )
  2731. {
  2732. # If test needs im, check binaries was found ok
  2733. if ( $instance_manager->{'executable_setup_failed'} )
  2734. {
  2735. mtr_report_test_name($tinfo);
  2736. $tinfo->{comment}=
  2737. "Failed to find MySQL manager binaries";
  2738. mtr_report_test_failed($tinfo);
  2739. return 1;
  2740. }
  2741. }
  2742. return 0;
  2743. }
  2744. sub do_before_run_mysqltest($)
  2745. {
  2746. my $tinfo= shift;
  2747. my $tname= $tinfo->{'name'};
  2748. # Remove old files produced by mysqltest
  2749. my $result_dir= "r";
  2750. if ( $opt_suite ne "main" )
  2751. {
  2752. $result_dir= "suite/$opt_suite/r";
  2753. }
  2754. unlink("$result_dir/$tname.reject");
  2755. unlink("$result_dir/$tname.progress");
  2756. unlink("$result_dir/$tname.log");
  2757. unlink("$result_dir/$tname.warnings");
  2758. if (!$opt_extern)
  2759. {
  2760. if ( $mysql_version_id < 50000 ) {
  2761. # Set environment variable NDB_STATUS_OK to 1
  2762. # if script decided to run mysqltest cluster _is_ installed ok
  2763. $ENV{'NDB_STATUS_OK'} = "1";
  2764. } elsif ( $mysql_version_id < 50100 ) {
  2765. # Set environment variable NDB_STATUS_OK to YES
  2766. # if script decided to run mysqltest cluster _is_ installed ok
  2767. $ENV{'NDB_STATUS_OK'} = "YES";
  2768. }
  2769. }
  2770. }
  2771. sub do_after_run_mysqltest($)
  2772. {
  2773. my $tinfo= shift;
  2774. my $tname= $tinfo->{'name'};
  2775. # Save info from this testcase run to mysqltest.log
  2776. mtr_appendfile_to_file($path_current_test_log, $path_mysqltest_log)
  2777. if -f $path_current_test_log;
  2778. mtr_appendfile_to_file($path_timefile, $path_mysqltest_log)
  2779. if -f $path_timefile;
  2780. # Remove the file that mysqltest writes info to
  2781. unlink($path_timefile);
  2782. }
  2783. sub run_testcase_mark_logs($)
  2784. {
  2785. my ($log_msg)= @_;
  2786. # Write a marker to all log files
  2787. # The file indicating current test name
  2788. mtr_tonewfile($path_current_test_log, $log_msg);
  2789. # each mysqld's .err file
  2790. foreach my $mysqld (@{$master}, @{$slave})
  2791. {
  2792. mtr_tofile($mysqld->{path_myerr}, $log_msg);
  2793. }
  2794. # ndbcluster log file
  2795. mtr_tofile($path_ndb_testrun_log, $log_msg);
  2796. }
  2797. sub find_testcase_skipped_reason($)
  2798. {
  2799. my ($tinfo)= @_;
  2800. # Set default message
  2801. $tinfo->{'comment'}= "Detected by testcase(no log file)";
  2802. # Open mysqltest-time(the mysqltest log file)
  2803. my $F= IO::File->new($path_timefile)
  2804. or return;
  2805. my $reason;
  2806. while ( my $line= <$F> )
  2807. {
  2808. # Look for "reason: <reason for skipping test>"
  2809. if ( $line =~ /reason: (.*)/ )
  2810. {
  2811. $reason= $1;
  2812. }
  2813. }
  2814. if ( ! $reason )
  2815. {
  2816. mtr_warning("Could not find reason for skipping test in $path_timefile");
  2817. $reason= "Detected by testcase(reason unknown) ";
  2818. }
  2819. $tinfo->{'comment'}= $reason;
  2820. }
  2821. sub analyze_testcase_failure_sync_with_master($)
  2822. {
  2823. my ($tinfo)= @_;
  2824. my $args;
  2825. mtr_init_args(\$args);
  2826. mtr_add_arg($args, "--no-defaults");
  2827. mtr_add_arg($args, "--silent");
  2828. mtr_add_arg($args, "--skip-safemalloc");
  2829. mtr_add_arg($args, "--tmpdir=%s", $opt_tmpdir);
  2830. mtr_add_arg($args, "--character-sets-dir=%s", $path_charsetsdir);
  2831. mtr_add_arg($args, "--socket=%s", $master->[0]->{'path_sock'});
  2832. mtr_add_arg($args, "--port=%d", $master->[0]->{'port'});
  2833. mtr_add_arg($args, "--database=test");
  2834. mtr_add_arg($args, "--user=%s", $opt_user);
  2835. mtr_add_arg($args, "--password=");
  2836. # Run the test file and append output to log file
  2837. mtr_run_test($exe_mysqltest,$args,
  2838. "include/analyze_failure_sync_with_master.test",
  2839. "$path_timefile", "$path_timefile","",
  2840. { append_log_file => 1 });
  2841. }
  2842. sub analyze_testcase_failure($)
  2843. {
  2844. my ($tinfo)= @_;
  2845. # Open mysqltest.log
  2846. my $F= IO::File->new($path_timefile)
  2847. or return;
  2848. while ( my $line= <$F> )
  2849. {
  2850. # Look for "mysqltest: At line nnn: <error>
  2851. if ( $line =~ /mysqltest: At line [0-9]*: (.*)/ )
  2852. {
  2853. my $error= $1;
  2854. # Look for "could not sync with master"
  2855. if ( $error =~ /could not sync with master/ )
  2856. {
  2857. analyze_testcase_failure_sync_with_master($tinfo);
  2858. }
  2859. }
  2860. }
  2861. }
  2862. ##############################################################################
  2863. #
  2864. # Run a single test case
  2865. #
  2866. ##############################################################################
  2867. # When we get here, we have already filtered out test cases that doesn't
  2868. # apply to the current setup, for example if we use a running server, test
  2869. # cases that restart the server are dropped. So this function should mostly
  2870. # be about doing things, not a lot of logic.
  2871. # We don't start and kill the servers for each testcase. But some
  2872. # testcases needs a restart, because they specify options to start
  2873. # mysqld with. After that testcase, we need to restart again, to set
  2874. # back the normal options.
  2875. sub run_testcase ($) {
  2876. my $tinfo= shift;
  2877. # -------------------------------------------------------
  2878. # Init variables that can change between each test case
  2879. # -------------------------------------------------------
  2880. $ENV{'TZ'}= $tinfo->{'timezone'};
  2881. mtr_verbose("Setting timezone: $tinfo->{'timezone'}");
  2882. my $master_restart= run_testcase_need_master_restart($tinfo);
  2883. my $slave_restart= run_testcase_need_slave_restart($tinfo);
  2884. if ($master_restart or $slave_restart)
  2885. {
  2886. # Can't restart a running server that may be in use
  2887. if ( $opt_extern )
  2888. {
  2889. mtr_report_test_name($tinfo);
  2890. $tinfo->{comment}= "Can't restart a running server";
  2891. mtr_report_test_skipped($tinfo);
  2892. return;
  2893. }
  2894. run_testcase_stop_servers($tinfo, $master_restart, $slave_restart);
  2895. }
  2896. # Write to all log files to indicate start of testcase
  2897. run_testcase_mark_logs("CURRENT_TEST: $tinfo->{name}\n");
  2898. my $died= mtr_record_dead_children();
  2899. if ($died or $master_restart or $slave_restart)
  2900. {
  2901. if (run_testcase_start_servers($tinfo))
  2902. {
  2903. mtr_report_test_name($tinfo);
  2904. report_failure_and_restart($tinfo);
  2905. return 1;
  2906. }
  2907. }
  2908. # ----------------------------------------------------------------------
  2909. # If --start-and-exit or --start-dirty given, stop here to let user manually
  2910. # run tests
  2911. # ----------------------------------------------------------------------
  2912. if ( $opt_start_and_exit or $opt_start_dirty )
  2913. {
  2914. mtr_timer_stop_all($glob_timers);
  2915. mtr_report("\nServers started, exiting");
  2916. exit(0);
  2917. }
  2918. {
  2919. do_before_run_mysqltest($tinfo);
  2920. my $res= run_mysqltest($tinfo);
  2921. mtr_report_test_name($tinfo);
  2922. if ( $res == 0 )
  2923. {
  2924. mtr_report_test_passed($tinfo);
  2925. }
  2926. elsif ( $res == 62 )
  2927. {
  2928. # Testcase itself tell us to skip this one
  2929. # Try to get reason from mysqltest.log
  2930. find_testcase_skipped_reason($tinfo);
  2931. mtr_report_test_skipped($tinfo);
  2932. }
  2933. elsif ( $res == 63 )
  2934. {
  2935. $tinfo->{'timeout'}= 1; # Mark as timeout
  2936. report_failure_and_restart($tinfo);
  2937. }
  2938. elsif ( $res == 1 )
  2939. {
  2940. if ( $opt_force )
  2941. {
  2942. analyze_testcase_failure($tinfo);
  2943. }
  2944. # Test case failure reported by mysqltest
  2945. report_failure_and_restart($tinfo);
  2946. }
  2947. else
  2948. {
  2949. # mysqltest failed, probably crashed
  2950. $tinfo->{comment}=
  2951. "mysqltest returned unexpected code $res, it has probably crashed";
  2952. report_failure_and_restart($tinfo);
  2953. }
  2954. do_after_run_mysqltest($tinfo);
  2955. }
  2956. # ----------------------------------------------------------------------
  2957. # Stop Instance Manager if we are processing an IM-test case.
  2958. # ----------------------------------------------------------------------
  2959. if ( $tinfo->{'component_id'} eq 'im' and
  2960. !mtr_im_stop($instance_manager, $tinfo->{'name'}) )
  2961. {
  2962. mtr_error("Failed to stop Instance Manager.")
  2963. }
  2964. }
  2965. #
  2966. # Save a snapshot of the installed test db(s)
  2967. # I.e take a snapshot of the var/ dir
  2968. #
  2969. sub save_installed_db () {
  2970. mtr_report("Saving snapshot of installed databases");
  2971. rmtree($path_snapshot);
  2972. foreach my $data_dir (@data_dir_lst)
  2973. {
  2974. my $name= basename($data_dir);
  2975. mtr_copy_dir("$data_dir", "$path_snapshot/$name");
  2976. }
  2977. }
  2978. #
  2979. # Save any interesting files in the data_dir
  2980. # before the data dir is removed.
  2981. #
  2982. sub save_files_before_restore($$) {
  2983. my $test_name= shift;
  2984. my $data_dir= shift;
  2985. my $save_name= "$opt_vardir/log/$test_name";
  2986. # Look for core files
  2987. foreach my $core_file ( glob("$data_dir/core*") )
  2988. {
  2989. last if $opt_max_save_core > 0 && $num_saved_cores >= $opt_max_save_core;
  2990. my $core_name= basename($core_file);
  2991. mtr_report("Saving $core_name");
  2992. mkdir($save_name) if ! -d $save_name;
  2993. rename("$core_file", "$save_name/$core_name");
  2994. ++$num_saved_cores;
  2995. }
  2996. }
  2997. #
  2998. # Restore snapshot of the installed test db(s)
  2999. # if the snapshot exists
  3000. #
  3001. sub restore_installed_db ($) {
  3002. my $test_name= shift;
  3003. if ( -d $path_snapshot)
  3004. {
  3005. mtr_report("Restoring snapshot of databases");
  3006. foreach my $data_dir (@data_dir_lst)
  3007. {
  3008. my $name= basename($data_dir);
  3009. save_files_before_restore($test_name, $data_dir);
  3010. rmtree("$data_dir");
  3011. mtr_copy_dir("$path_snapshot/$name", "$data_dir");
  3012. }
  3013. # Remove the ndb_*_fs dirs for all ndbd nodes
  3014. # forcing a clean start of ndb
  3015. foreach my $cluster (@{$clusters})
  3016. {
  3017. foreach my $ndbd (@{$cluster->{'ndbds'}})
  3018. {
  3019. rmtree("$ndbd->{'path_fs'}" );
  3020. }
  3021. }
  3022. }
  3023. else
  3024. {
  3025. # No snapshot existed
  3026. mtr_error("No snapshot existed");
  3027. }
  3028. }
  3029. sub report_failure_and_restart ($) {
  3030. my $tinfo= shift;
  3031. mtr_report_test_failed($tinfo);
  3032. mtr_show_failed_diff($tinfo->{'result_file'});
  3033. print "\n";
  3034. if ( $opt_force )
  3035. {
  3036. # Stop all servers that are known to be running
  3037. stop_all_servers();
  3038. # Restore the snapshot of the installed test db
  3039. restore_installed_db($tinfo->{'name'});
  3040. print "Resuming Tests\n\n";
  3041. return;
  3042. }
  3043. my $test_mode= join(" ", @::glob_test_mode) || "default";
  3044. print "Aborting: $tinfo->{'name'} failed in $test_mode mode. ";
  3045. print "To continue, re-run with '--force'.\n";
  3046. if ( ! $glob_debugger and
  3047. ! $opt_extern and
  3048. ! $glob_use_embedded_server )
  3049. {
  3050. stop_all_servers();
  3051. }
  3052. mtr_exit(1);
  3053. }
  3054. ##############################################################################
  3055. #
  3056. # Start and stop servers
  3057. #
  3058. ##############################################################################
  3059. sub do_before_start_master ($) {
  3060. my ($tinfo)= @_;
  3061. my $tname= $tinfo->{'name'};
  3062. my $init_script= $tinfo->{'master_sh'};
  3063. # FIXME what about second master.....
  3064. # Don't delete anything if starting dirty
  3065. return if ($opt_start_dirty);
  3066. foreach my $bin ( glob("$opt_vardir/log/master*-bin*") )
  3067. {
  3068. unlink($bin);
  3069. }
  3070. # FIXME only remove the ones that are tied to this master
  3071. # Remove old master.info and relay-log.info files
  3072. unlink("$master->[0]->{'path_myddir'}/master.info");
  3073. unlink("$master->[0]->{'path_myddir'}/relay-log.info");
  3074. unlink("$master->[1]->{'path_myddir'}/master.info");
  3075. unlink("$master->[1]->{'path_myddir'}/relay-log.info");
  3076. # Run master initialization shell script if one exists
  3077. if ( $init_script )
  3078. {
  3079. my $ret= mtr_run("/bin/sh", [$init_script], "", "", "", "");
  3080. if ( $ret != 0 )
  3081. {
  3082. # FIXME rewrite those scripts to return 0 if successful
  3083. # mtr_warning("$init_script exited with code $ret");
  3084. }
  3085. }
  3086. }
  3087. sub do_before_start_slave ($) {
  3088. my ($tinfo)= @_;
  3089. my $tname= $tinfo->{'name'};
  3090. my $init_script= $tinfo->{'master_sh'};
  3091. # Don't delete anything if starting dirty
  3092. return if ($opt_start_dirty);
  3093. foreach my $bin ( glob("$opt_vardir/log/slave*-bin*") )
  3094. {
  3095. unlink($bin);
  3096. }
  3097. unlink("$slave->[0]->{'path_myddir'}/master.info");
  3098. unlink("$slave->[0]->{'path_myddir'}/relay-log.info");
  3099. # Run slave initialization shell script if one exists
  3100. if ( $init_script )
  3101. {
  3102. my $ret= mtr_run("/bin/sh", [$init_script], "", "", "", "");
  3103. if ( $ret != 0 )
  3104. {
  3105. # FIXME rewrite those scripts to return 0 if successful
  3106. # mtr_warning("$init_script exited with code $ret");
  3107. }
  3108. }
  3109. foreach my $bin ( glob("$slave->[0]->{'path_myddir'}/log.*") )
  3110. {
  3111. unlink($bin);
  3112. }
  3113. }
  3114. sub mysqld_arguments ($$$$) {
  3115. my $args= shift;
  3116. my $mysqld= shift;
  3117. my $extra_opt= shift;
  3118. my $slave_master_info= shift;
  3119. my $idx= $mysqld->{'idx'};
  3120. my $sidx= ""; # Index as string, 0 is empty string
  3121. if ( $idx> 0 )
  3122. {
  3123. $sidx= $idx;
  3124. }
  3125. my $prefix= ""; # If mysqltest server arg
  3126. if ( $glob_use_embedded_server )
  3127. {
  3128. $prefix= "--server-arg=";
  3129. }
  3130. mtr_add_arg($args, "%s--no-defaults", $prefix);
  3131. mtr_add_arg($args, "%s--basedir=%s", $prefix, $path_my_basedir);
  3132. mtr_add_arg($args, "%s--character-sets-dir=%s", $prefix, $path_charsetsdir);
  3133. if ( $mysql_version_id >= 50036)
  3134. {
  3135. # By default, prevent the started mysqld to access files outside of vardir
  3136. my $secure_file_dir= $opt_vardir;
  3137. if ( $opt_suite ne "main" )
  3138. {
  3139. # When running a suite other than default allow the mysqld
  3140. # access to subdirs of mysql-test/ in order to make it possible
  3141. # to "load data" from the suites data/ directory.
  3142. $secure_file_dir= $glob_mysql_test_dir;
  3143. }
  3144. mtr_add_arg($args, "%s--secure-file-priv=%s", $prefix, $secure_file_dir);
  3145. }
  3146. if ( $mysql_version_id >= 50000 )
  3147. {
  3148. mtr_add_arg($args, "%s--log-bin-trust-function-creators", $prefix);
  3149. }
  3150. mtr_add_arg($args, "%s--default-character-set=latin1", $prefix);
  3151. mtr_add_arg($args, "%s--language=%s", $prefix, $path_language);
  3152. mtr_add_arg($args, "%s--tmpdir=$opt_tmpdir", $prefix);
  3153. if ( $opt_valgrind_mysqld )
  3154. {
  3155. mtr_add_arg($args, "%s--skip-safemalloc", $prefix);
  3156. if ( $mysql_version_id < 50100 )
  3157. {
  3158. mtr_add_arg($args, "%s--skip-bdb", $prefix);
  3159. }
  3160. }
  3161. mtr_add_arg($args, "%s--pid-file=%s", $prefix,
  3162. $mysqld->{'path_pid'});
  3163. mtr_add_arg($args, "%s--port=%d", $prefix,
  3164. $mysqld->{'port'});
  3165. mtr_add_arg($args, "%s--socket=%s", $prefix,
  3166. $mysqld->{'path_sock'});
  3167. mtr_add_arg($args, "%s--datadir=%s", $prefix,
  3168. $mysqld->{'path_myddir'});
  3169. if ( $mysql_version_id >= 50106 )
  3170. {
  3171. # Turn on logging to bothe tables and file
  3172. mtr_add_arg($args, "%s--log-output=table,file", $prefix);
  3173. }
  3174. my $log_base_path= "$opt_vardir/log/$mysqld->{'type'}$sidx";
  3175. mtr_add_arg($args, "%s--log=%s.log", $prefix, $log_base_path);
  3176. mtr_add_arg($args,
  3177. "%s--log-slow-queries=%s-slow.log", $prefix, $log_base_path);
  3178. # Check if "extra_opt" contains --skip-log-bin
  3179. my $skip_binlog= grep(/^--skip-log-bin/, @$extra_opt, @opt_extra_mysqld_opt);
  3180. if ( $mysqld->{'type'} eq 'master' )
  3181. {
  3182. if (! ($opt_skip_master_binlog || $skip_binlog) )
  3183. {
  3184. mtr_add_arg($args, "%s--log-bin=%s/log/master-bin%s", $prefix,
  3185. $opt_vardir, $sidx);
  3186. }
  3187. mtr_add_arg($args, "%s--server-id=%d", $prefix,
  3188. $idx > 0 ? $idx + 101 : 1);
  3189. mtr_add_arg($args, "%s--innodb_data_file_path=ibdata1:10M:autoextend",
  3190. $prefix);
  3191. mtr_add_arg($args, "%s--local-infile", $prefix);
  3192. if ( $idx > 0 or !$use_innodb)
  3193. {
  3194. mtr_add_arg($args, "%s--skip-innodb", $prefix);
  3195. }
  3196. my $cluster= $clusters->[$mysqld->{'cluster'}];
  3197. if ( $opt_skip_ndbcluster ||
  3198. !$cluster->{'pid'})
  3199. {
  3200. mtr_add_arg($args, "%s--skip-ndbcluster", $prefix);
  3201. }
  3202. else
  3203. {
  3204. mtr_add_arg($args, "%s--ndbcluster", $prefix);
  3205. mtr_add_arg($args, "%s--ndb-connectstring=%s", $prefix,
  3206. $cluster->{'connect_string'});
  3207. if ( $mysql_version_id >= 50100 )
  3208. {
  3209. mtr_add_arg($args, "%s--ndb-extra-logging", $prefix);
  3210. }
  3211. }
  3212. }
  3213. else
  3214. {
  3215. mtr_error("unknown mysqld type")
  3216. unless $mysqld->{'type'} eq 'slave';
  3217. mtr_add_arg($args, "%s--init-rpl-role=slave", $prefix);
  3218. if (! ( $opt_skip_slave_binlog || $skip_binlog ))
  3219. {
  3220. mtr_add_arg($args, "%s--log-bin=%s/log/slave%s-bin", $prefix,
  3221. $opt_vardir, $sidx); # FIXME use own dir for binlogs
  3222. mtr_add_arg($args, "%s--log-slave-updates", $prefix);
  3223. }
  3224. mtr_add_arg($args, "%s--master-retry-count=10", $prefix);
  3225. mtr_add_arg($args, "%s--relay-log=%s/log/slave%s-relay-bin", $prefix,
  3226. $opt_vardir, $sidx);
  3227. mtr_add_arg($args, "%s--report-host=127.0.0.1", $prefix);
  3228. mtr_add_arg($args, "%s--report-port=%d", $prefix,
  3229. $mysqld->{'port'});
  3230. mtr_add_arg($args, "%s--report-user=root", $prefix);
  3231. mtr_add_arg($args, "%s--skip-innodb", $prefix);
  3232. mtr_add_arg($args, "%s--skip-slave-start", $prefix);
  3233. # Directory where slaves find the dumps generated by "load data"
  3234. # on the server. The path need to have constant length otherwise
  3235. # test results will vary, thus a relative path is used.
  3236. my $slave_load_path= "../tmp";
  3237. mtr_add_arg($args, "%s--slave-load-tmpdir=%s", $prefix,
  3238. $slave_load_path);
  3239. mtr_add_arg($args, "%s--set-variable=slave_net_timeout=10", $prefix);
  3240. if ( @$slave_master_info )
  3241. {
  3242. foreach my $arg ( @$slave_master_info )
  3243. {
  3244. mtr_add_arg($args, "%s%s", $prefix, $arg);
  3245. }
  3246. }
  3247. else
  3248. {
  3249. mtr_add_arg($args, "%s--master-user=root", $prefix);
  3250. mtr_add_arg($args, "%s--master-connect-retry=1", $prefix);
  3251. mtr_add_arg($args, "%s--master-host=127.0.0.1", $prefix);
  3252. mtr_add_arg($args, "%s--master-password=", $prefix);
  3253. mtr_add_arg($args, "%s--master-port=%d", $prefix,
  3254. $master->[0]->{'port'}); # First master
  3255. my $slave_server_id= 2 + $idx;
  3256. my $slave_rpl_rank= $slave_server_id;
  3257. mtr_add_arg($args, "%s--server-id=%d", $prefix, $slave_server_id);
  3258. mtr_add_arg($args, "%s--rpl-recovery-rank=%d", $prefix, $slave_rpl_rank);
  3259. }
  3260. if ( $opt_skip_ndbcluster_slave ||
  3261. $mysqld->{'cluster'} == -1 ||
  3262. !$clusters->[$mysqld->{'cluster'}]->{'pid'} )
  3263. {
  3264. mtr_add_arg($args, "%s--skip-ndbcluster", $prefix);
  3265. }
  3266. else
  3267. {
  3268. mtr_add_arg($args, "%s--ndbcluster", $prefix);
  3269. mtr_add_arg($args, "%s--ndb-connectstring=%s", $prefix,
  3270. $clusters->[$mysqld->{'cluster'}]->{'connect_string'});
  3271. if ( $mysql_version_id >= 50100 )
  3272. {
  3273. mtr_add_arg($args, "%s--ndb-extra-logging", $prefix);
  3274. }
  3275. }
  3276. } # end slave
  3277. if ( $opt_debug )
  3278. {
  3279. mtr_add_arg($args, "%s--debug=d:t:i:A,%s/log/%s%s.trace",
  3280. $prefix, $path_vardir_trace, $mysqld->{'type'}, $sidx);
  3281. }
  3282. mtr_add_arg($args, "%s--key_buffer_size=1M", $prefix);
  3283. mtr_add_arg($args, "%s--sort_buffer=256K", $prefix);
  3284. mtr_add_arg($args, "%s--max_heap_table_size=1M", $prefix);
  3285. if ( $opt_ssl_supported )
  3286. {
  3287. mtr_add_arg($args, "%s--ssl-ca=%s/std_data/cacert.pem", $prefix,
  3288. $glob_mysql_test_dir);
  3289. mtr_add_arg($args, "%s--ssl-cert=%s/std_data/server-cert.pem", $prefix,
  3290. $glob_mysql_test_dir);
  3291. mtr_add_arg($args, "%s--ssl-key=%s/std_data/server-key.pem", $prefix,
  3292. $glob_mysql_test_dir);
  3293. }
  3294. if ( $opt_warnings )
  3295. {
  3296. mtr_add_arg($args, "%s--log-warnings", $prefix);
  3297. }
  3298. # Indicate to "mysqld" it will be debugged in debugger
  3299. if ( $glob_debugger )
  3300. {
  3301. mtr_add_arg($args, "%s--gdb", $prefix);
  3302. }
  3303. my $found_skip_core= 0;
  3304. foreach my $arg ( @opt_extra_mysqld_opt, @$extra_opt )
  3305. {
  3306. # Allow --skip-core-file to be set in <testname>-[master|slave].opt file
  3307. if ($arg eq "--skip-core-file")
  3308. {
  3309. $found_skip_core= 1;
  3310. }
  3311. elsif ($skip_binlog and mtr_match_prefix($arg, "--binlog-format"))
  3312. {
  3313. ; # Dont add --binlog-format when running without binlog
  3314. }
  3315. else
  3316. {
  3317. mtr_add_arg($args, "%s%s", $prefix, $arg);
  3318. }
  3319. }
  3320. if ( !$found_skip_core )
  3321. {
  3322. mtr_add_arg($args, "%s%s", $prefix, "--core-file");
  3323. }
  3324. if ( $opt_bench )
  3325. {
  3326. mtr_add_arg($args, "%s--rpl-recovery-rank=1", $prefix);
  3327. mtr_add_arg($args, "%s--init-rpl-role=master", $prefix);
  3328. }
  3329. elsif ( $mysqld->{'type'} eq 'master' )
  3330. {
  3331. mtr_add_arg($args, "%s--open-files-limit=1024", $prefix);
  3332. }
  3333. return $args;
  3334. }
  3335. ##############################################################################
  3336. #
  3337. # Start mysqld and return the PID
  3338. #
  3339. ##############################################################################
  3340. sub mysqld_start ($$$) {
  3341. my $mysqld= shift;
  3342. my $extra_opt= shift;
  3343. my $slave_master_info= shift;
  3344. my $args; # Arg vector
  3345. my $exe;
  3346. my $pid= -1;
  3347. my $wait_for_pid_file= 1;
  3348. my $type= $mysqld->{'type'};
  3349. my $idx= $mysqld->{'idx'};
  3350. mtr_error("Internal error: mysqld should never be started for embedded")
  3351. if $glob_use_embedded_server;
  3352. if ( $type eq 'master' )
  3353. {
  3354. $exe= $exe_master_mysqld;
  3355. }
  3356. elsif ( $type eq 'slave' )
  3357. {
  3358. $exe= $exe_slave_mysqld;
  3359. }
  3360. else
  3361. {
  3362. mtr_error("Unknown 'type' \"$type\" passed to mysqld_start");
  3363. }
  3364. mtr_init_args(\$args);
  3365. if ( $opt_valgrind_mysqld )
  3366. {
  3367. valgrind_arguments($args, \$exe);
  3368. }
  3369. mysqld_arguments($args,$mysqld,$extra_opt,$slave_master_info);
  3370. if ( $opt_gdb || $opt_manual_gdb)
  3371. {
  3372. gdb_arguments(\$args, \$exe, "$type"."_$idx");
  3373. }
  3374. elsif ( $opt_ddd || $opt_manual_ddd )
  3375. {
  3376. ddd_arguments(\$args, \$exe, "$type"."_$idx");
  3377. }
  3378. elsif ( $opt_debugger )
  3379. {
  3380. debugger_arguments(\$args, \$exe, "$type"."_$idx");
  3381. }
  3382. elsif ( $opt_manual_debug )
  3383. {
  3384. print "\nStart $type in your debugger\n" .
  3385. "dir: $glob_mysql_test_dir\n" .
  3386. "exe: $exe\n" .
  3387. "args: " . join(" ", @$args) . "\n\n" .
  3388. "Waiting ....\n";
  3389. # Indicate the exe should not be started
  3390. $exe= undef;
  3391. }
  3392. else
  3393. {
  3394. # Default to not wait until pid file has been created
  3395. $wait_for_pid_file= 0;
  3396. }
  3397. if ( defined $exe )
  3398. {
  3399. $pid= mtr_spawn($exe, $args, "",
  3400. $mysqld->{'path_myerr'},
  3401. $mysqld->{'path_myerr'},
  3402. "",
  3403. { append_log_file => 1 });
  3404. }
  3405. if ( $wait_for_pid_file && !sleep_until_file_created($mysqld->{'path_pid'},
  3406. $mysqld->{'start_timeout'},
  3407. $pid))
  3408. {
  3409. mtr_error("Failed to start mysqld $mysqld->{'type'}");
  3410. }
  3411. # Remember pid of the started process
  3412. $mysqld->{'pid'}= $pid;
  3413. # Remember options used when starting
  3414. $mysqld->{'start_opts'}= $extra_opt;
  3415. $mysqld->{'start_slave_master_info'}= $slave_master_info;
  3416. mtr_verbose("mysqld pid: $pid");
  3417. return $pid;
  3418. }
  3419. sub stop_all_servers () {
  3420. print "Stopping All Servers\n";
  3421. if ( ! $opt_skip_im )
  3422. {
  3423. print "Shutting-down Instance Manager\n";
  3424. unless (mtr_im_stop($instance_manager, "stop_all_servers"))
  3425. {
  3426. mtr_error("Failed to stop Instance Manager.")
  3427. }
  3428. }
  3429. my %admin_pids; # hash of admin processes that requests shutdown
  3430. my @kill_pids; # list of processes to shutdown/kill
  3431. my $pid;
  3432. # Start shutdown of all started masters
  3433. foreach my $mysqld (@{$master}, @{$slave})
  3434. {
  3435. if ( $mysqld->{'pid'} )
  3436. {
  3437. $pid= mtr_mysqladmin_start($mysqld, "shutdown", 70);
  3438. $admin_pids{$pid}= 1;
  3439. push(@kill_pids,{
  3440. pid => $mysqld->{'pid'},
  3441. real_pid => $mysqld->{'real_pid'},
  3442. pidfile => $mysqld->{'path_pid'},
  3443. sockfile => $mysqld->{'path_sock'},
  3444. port => $mysqld->{'port'},
  3445. errfile => $mysqld->{'path_myerr'},
  3446. });
  3447. $mysqld->{'pid'}= 0; # Assume we are done with it
  3448. }
  3449. }
  3450. # Start shutdown of clusters
  3451. foreach my $cluster (@{$clusters})
  3452. {
  3453. if ( $cluster->{'pid'} )
  3454. {
  3455. $pid= mtr_ndbmgm_start($cluster, "shutdown");
  3456. $admin_pids{$pid}= 1;
  3457. push(@kill_pids,{
  3458. pid => $cluster->{'pid'},
  3459. pidfile => $cluster->{'path_pid'}
  3460. });
  3461. $cluster->{'pid'}= 0; # Assume we are done with it
  3462. foreach my $ndbd (@{$cluster->{'ndbds'}})
  3463. {
  3464. if ( $ndbd->{'pid'} )
  3465. {
  3466. push(@kill_pids,{
  3467. pid => $ndbd->{'pid'},
  3468. pidfile => $ndbd->{'path_pid'},
  3469. });
  3470. $ndbd->{'pid'}= 0;
  3471. }
  3472. }
  3473. }
  3474. }
  3475. # Wait blocking until all shutdown processes has completed
  3476. mtr_wait_blocking(\%admin_pids);
  3477. # Make sure that process has shutdown else try to kill them
  3478. mtr_check_stop_servers(\@kill_pids);
  3479. foreach my $mysqld (@{$master}, @{$slave})
  3480. {
  3481. rm_ndbcluster_tables($mysqld->{'path_myddir'});
  3482. }
  3483. }
  3484. sub run_testcase_need_master_restart($)
  3485. {
  3486. my ($tinfo)= @_;
  3487. # We try to find out if we are to restart the master(s)
  3488. my $do_restart= 0; # Assumes we don't have to
  3489. if ( $glob_use_embedded_server )
  3490. {
  3491. mtr_verbose("Never start or restart for embedded server");
  3492. return $do_restart;
  3493. }
  3494. elsif ( $tinfo->{'master_sh'} )
  3495. {
  3496. $do_restart= 1; # Always restart if script to run
  3497. mtr_verbose("Restart master: Always restart if script to run");
  3498. }
  3499. if ( $tinfo->{'force_restart'} )
  3500. {
  3501. $do_restart= 1; # Always restart if --force-restart in -opt file
  3502. mtr_verbose("Restart master: Restart forced with --force-restart");
  3503. }
  3504. elsif ( ! $opt_skip_ndbcluster and
  3505. !$tinfo->{'ndb_test'} and
  3506. $clusters->[0]->{'pid'} != 0 )
  3507. {
  3508. $do_restart= 1; # Restart without cluster
  3509. mtr_verbose("Restart master: Test does not need cluster");
  3510. }
  3511. elsif ( ! $opt_skip_ndbcluster and
  3512. $tinfo->{'ndb_test'} and
  3513. $clusters->[0]->{'pid'} == 0 )
  3514. {
  3515. $do_restart= 1; # Restart with cluster
  3516. mtr_verbose("Restart master: Test need cluster");
  3517. }
  3518. elsif( $tinfo->{'component_id'} eq 'im' )
  3519. {
  3520. $do_restart= 1;
  3521. mtr_verbose("Restart master: Always restart for im tests");
  3522. }
  3523. elsif ( $master->[0]->{'running_master_options'} and
  3524. $master->[0]->{'running_master_options'}->{'timezone'} ne
  3525. $tinfo->{'timezone'})
  3526. {
  3527. $do_restart= 1;
  3528. mtr_verbose("Restart master: Different timezone");
  3529. }
  3530. # Check that running master was started with same options
  3531. # as the current test requires
  3532. elsif (! mtr_same_opts($master->[0]->{'start_opts'},
  3533. $tinfo->{'master_opt'}) )
  3534. {
  3535. $do_restart= 1;
  3536. mtr_verbose("Restart master: running with different options '" .
  3537. join(" ", @{$tinfo->{'master_opt'}}) . "' != '" .
  3538. join(" ", @{$master->[0]->{'start_opts'}}) . "'" );
  3539. }
  3540. elsif( ! $master->[0]->{'pid'} )
  3541. {
  3542. if ( $opt_extern )
  3543. {
  3544. $do_restart= 0;
  3545. mtr_verbose("No restart: using extern master");
  3546. }
  3547. else
  3548. {
  3549. $do_restart= 1;
  3550. mtr_verbose("Restart master: master is not started");
  3551. }
  3552. }
  3553. return $do_restart;
  3554. }
  3555. sub run_testcase_need_slave_restart($)
  3556. {
  3557. my ($tinfo)= @_;
  3558. # We try to find out if we are to restart the slaves
  3559. my $do_slave_restart= 0; # Assumes we don't have to
  3560. if ( $glob_use_embedded_server )
  3561. {
  3562. mtr_verbose("Never start or restart for embedded server");
  3563. return $do_slave_restart;
  3564. }
  3565. elsif ( $max_slave_num == 0)
  3566. {
  3567. mtr_verbose("Skip slave restart: No testcase use slaves");
  3568. }
  3569. else
  3570. {
  3571. # Check if any slave is currently started
  3572. my $any_slave_started= 0;
  3573. foreach my $mysqld (@{$slave})
  3574. {
  3575. if ( $mysqld->{'pid'} )
  3576. {
  3577. $any_slave_started= 1;
  3578. last;
  3579. }
  3580. }
  3581. if ($any_slave_started)
  3582. {
  3583. mtr_verbose("Restart slave: Slave is started, always restart");
  3584. $do_slave_restart= 1;
  3585. }
  3586. elsif ( $tinfo->{'slave_num'} )
  3587. {
  3588. mtr_verbose("Restart slave: Test need slave");
  3589. $do_slave_restart= 1;
  3590. }
  3591. }
  3592. return $do_slave_restart;
  3593. }
  3594. # ----------------------------------------------------------------------
  3595. # If not using a running servers we may need to stop and restart.
  3596. # We restart in the case we have initiation scripts, server options
  3597. # etc to run. But we also restart again after the test first restart
  3598. # and test is run, to get back to normal server settings.
  3599. #
  3600. # To make the code a bit more clean, we actually only stop servers
  3601. # here, and mark this to be done. Then a generic "start" part will
  3602. # start up the needed servers again.
  3603. # ----------------------------------------------------------------------
  3604. sub run_testcase_stop_servers($$$) {
  3605. my ($tinfo, $do_restart, $do_slave_restart)= @_;
  3606. my $pid;
  3607. my %admin_pids; # hash of admin processes that requests shutdown
  3608. my @kill_pids; # list of processes to shutdown/kill
  3609. # Remember if we restarted for this test case (count restarts)
  3610. $tinfo->{'restarted'}= $do_restart;
  3611. if ( $do_restart )
  3612. {
  3613. delete $master->[0]->{'running_master_options'}; # Forget history
  3614. # Start shutdown of all started masters
  3615. foreach my $mysqld (@{$master})
  3616. {
  3617. if ( $mysqld->{'pid'} )
  3618. {
  3619. $pid= mtr_mysqladmin_start($mysqld, "shutdown", 70);
  3620. $admin_pids{$pid}= 1;
  3621. push(@kill_pids,{
  3622. pid => $mysqld->{'pid'},
  3623. real_pid => $mysqld->{'real_pid'},
  3624. pidfile => $mysqld->{'path_pid'},
  3625. sockfile => $mysqld->{'path_sock'},
  3626. port => $mysqld->{'port'},
  3627. errfile => $mysqld->{'path_myerr'},
  3628. });
  3629. $mysqld->{'pid'}= 0; # Assume we are done with it
  3630. }
  3631. }
  3632. # Start shutdown of master cluster
  3633. my $cluster= $clusters->[0];
  3634. if ( $cluster->{'pid'} )
  3635. {
  3636. $pid= mtr_ndbmgm_start($cluster, "shutdown");
  3637. $admin_pids{$pid}= 1;
  3638. push(@kill_pids,{
  3639. pid => $cluster->{'pid'},
  3640. pidfile => $cluster->{'path_pid'}
  3641. });
  3642. $cluster->{'pid'}= 0; # Assume we are done with it
  3643. foreach my $ndbd (@{$cluster->{'ndbds'}})
  3644. {
  3645. push(@kill_pids,{
  3646. pid => $ndbd->{'pid'},
  3647. pidfile => $ndbd->{'path_pid'},
  3648. });
  3649. $ndbd->{'pid'}= 0; # Assume we are done with it
  3650. }
  3651. }
  3652. }
  3653. if ( $do_restart || $do_slave_restart )
  3654. {
  3655. delete $slave->[0]->{'running_slave_options'}; # Forget history
  3656. # Start shutdown of all started slaves
  3657. foreach my $mysqld (@{$slave})
  3658. {
  3659. if ( $mysqld->{'pid'} )
  3660. {
  3661. $pid= mtr_mysqladmin_start($mysqld, "shutdown", 70);
  3662. $admin_pids{$pid}= 1;
  3663. push(@kill_pids,{
  3664. pid => $mysqld->{'pid'},
  3665. real_pid => $mysqld->{'real_pid'},
  3666. pidfile => $mysqld->{'path_pid'},
  3667. sockfile => $mysqld->{'path_sock'},
  3668. port => $mysqld->{'port'},
  3669. errfile => $mysqld->{'path_myerr'},
  3670. });
  3671. $mysqld->{'pid'}= 0; # Assume we are done with it
  3672. }
  3673. }
  3674. # Start shutdown of slave cluster
  3675. my $cluster= $clusters->[1];
  3676. if ( $cluster->{'pid'} )
  3677. {
  3678. $pid= mtr_ndbmgm_start($cluster, "shutdown");
  3679. $admin_pids{$pid}= 1;
  3680. push(@kill_pids,{
  3681. pid => $cluster->{'pid'},
  3682. pidfile => $cluster->{'path_pid'}
  3683. });
  3684. $cluster->{'pid'}= 0; # Assume we are done with it
  3685. foreach my $ndbd (@{$cluster->{'ndbds'}} )
  3686. {
  3687. push(@kill_pids,{
  3688. pid => $ndbd->{'pid'},
  3689. pidfile => $ndbd->{'path_pid'},
  3690. });
  3691. $ndbd->{'pid'}= 0; # Assume we are done with it
  3692. }
  3693. }
  3694. }
  3695. # ----------------------------------------------------------------------
  3696. # Shutdown has now been started and lists for the shutdown processes
  3697. # and the processes to be killed has been created
  3698. # ----------------------------------------------------------------------
  3699. # Wait blocking until all shutdown processes has completed
  3700. mtr_wait_blocking(\%admin_pids);
  3701. # Make sure that process has shutdown else try to kill them
  3702. mtr_check_stop_servers(\@kill_pids);
  3703. foreach my $mysqld (@{$master}, @{$slave})
  3704. {
  3705. if ( ! $mysqld->{'pid'} )
  3706. {
  3707. # Remove ndbcluster tables if server is stopped
  3708. rm_ndbcluster_tables($mysqld->{'path_myddir'});
  3709. }
  3710. }
  3711. }
  3712. #
  3713. # run_testcase_start_servers
  3714. #
  3715. # Start the servers needed by this test case
  3716. #
  3717. # RETURN
  3718. # 0 OK
  3719. # 1 Start failed
  3720. #
  3721. sub run_testcase_start_servers($) {
  3722. my $tinfo= shift;
  3723. my $tname= $tinfo->{'name'};
  3724. if ( $tinfo->{'component_id'} eq 'mysqld' )
  3725. {
  3726. if ( ! $opt_skip_ndbcluster and
  3727. !$clusters->[0]->{'pid'} and
  3728. $tinfo->{'ndb_test'} )
  3729. {
  3730. # Test need cluster, cluster is not started, start it
  3731. ndbcluster_start($clusters->[0], "");
  3732. }
  3733. if ( !$master->[0]->{'pid'} )
  3734. {
  3735. # Master mysqld is not started
  3736. do_before_start_master($tinfo);
  3737. mysqld_start($master->[0],$tinfo->{'master_opt'},[]);
  3738. }
  3739. if ( $clusters->[0]->{'pid'} and ! $master->[1]->{'pid'} and
  3740. $tinfo->{'master_num'} > 1 )
  3741. {
  3742. # Test needs cluster, start an extra mysqld connected to cluster
  3743. if ( $mysql_version_id >= 50100 )
  3744. {
  3745. # First wait for first mysql server to have created ndb system
  3746. # tables ok FIXME This is a workaround so that only one mysqld
  3747. # create the tables
  3748. if ( ! sleep_until_file_created(
  3749. "$master->[0]->{'path_myddir'}/mysql/apply_status.ndb",
  3750. $master->[0]->{'start_timeout'},
  3751. $master->[0]->{'pid'}))
  3752. {
  3753. $tinfo->{'comment'}= "Failed to create 'mysql/apply_status' table";
  3754. return 1;
  3755. }
  3756. }
  3757. mysqld_start($master->[1],$tinfo->{'master_opt'},[]);
  3758. }
  3759. # Save this test case information, so next can examine it
  3760. $master->[0]->{'running_master_options'}= $tinfo;
  3761. }
  3762. elsif ( ! $opt_skip_im and $tinfo->{'component_id'} eq 'im' )
  3763. {
  3764. # We have to create defaults file every time, in order to ensure that it
  3765. # will be the same for each test. The problem is that test can change the
  3766. # file (by SET/UNSET commands), so w/o recreating the file, execution of
  3767. # one test can affect the other.
  3768. im_create_defaults_file($instance_manager);
  3769. if ( ! mtr_im_start($instance_manager, $tinfo->{im_opts}) )
  3770. {
  3771. $tinfo->{'comment'}= "Failed to start Instance Manager. ";
  3772. return 1;
  3773. }
  3774. }
  3775. # ----------------------------------------------------------------------
  3776. # Start slaves - if needed
  3777. # ----------------------------------------------------------------------
  3778. if ( $tinfo->{'slave_num'} )
  3779. {
  3780. restore_slave_databases($tinfo->{'slave_num'});
  3781. do_before_start_slave($tinfo);
  3782. if ( ! $opt_skip_ndbcluster_slave and
  3783. !$clusters->[1]->{'pid'} and
  3784. $tinfo->{'ndb_test'} )
  3785. {
  3786. # Test need slave cluster, cluster is not started, start it
  3787. ndbcluster_start($clusters->[1], "");
  3788. }
  3789. for ( my $idx= 0; $idx < $tinfo->{'slave_num'}; $idx++ )
  3790. {
  3791. if ( ! $slave->[$idx]->{'pid'} )
  3792. {
  3793. mysqld_start($slave->[$idx],$tinfo->{'slave_opt'},
  3794. $tinfo->{'slave_mi'});
  3795. }
  3796. }
  3797. # Save this test case information, so next can examine it
  3798. $slave->[0]->{'running_slave_options'}= $tinfo;
  3799. }
  3800. # Wait for clusters to start
  3801. foreach my $cluster (@{$clusters})
  3802. {
  3803. next if !$cluster->{'pid'};
  3804. if (ndbcluster_wait_started($cluster, ""))
  3805. {
  3806. # failed to start
  3807. $tinfo->{'comment'}= "Start of $cluster->{'name'} cluster failed";
  3808. return 1;
  3809. }
  3810. }
  3811. # Wait for mysqld's to start
  3812. foreach my $mysqld (@{$master},@{$slave})
  3813. {
  3814. next if !$mysqld->{'pid'};
  3815. if (mysqld_wait_started($mysqld))
  3816. {
  3817. # failed to start
  3818. $tinfo->{'comment'}=
  3819. "Failed to start $mysqld->{'type'} mysqld $mysqld->{'idx'}";
  3820. return 1;
  3821. }
  3822. }
  3823. return 0;
  3824. }
  3825. #
  3826. # Run include/check-testcase.test
  3827. # Before a testcase, run in record mode, save result file to var
  3828. # After testcase, run and compare with the recorded file, they should be equal!
  3829. #
  3830. # RETURN VALUE
  3831. # 0 OK
  3832. # 1 Check failed
  3833. #
  3834. sub run_check_testcase ($$) {
  3835. my $mode= shift;
  3836. my $mysqld= shift;
  3837. my $name= "check-" . $mysqld->{'type'} . $mysqld->{'idx'};
  3838. my $args;
  3839. mtr_init_args(\$args);
  3840. mtr_add_arg($args, "--no-defaults");
  3841. mtr_add_arg($args, "--silent");
  3842. mtr_add_arg($args, "--skip-safemalloc");
  3843. mtr_add_arg($args, "--tmpdir=%s", $opt_tmpdir);
  3844. mtr_add_arg($args, "--character-sets-dir=%s", $path_charsetsdir);
  3845. mtr_add_arg($args, "--socket=%s", $mysqld->{'path_sock'});
  3846. mtr_add_arg($args, "--port=%d", $mysqld->{'port'});
  3847. mtr_add_arg($args, "--database=test");
  3848. mtr_add_arg($args, "--user=%s", $opt_user);
  3849. mtr_add_arg($args, "--password=");
  3850. mtr_add_arg($args, "-R");
  3851. mtr_add_arg($args, "$opt_vardir/tmp/$name.result");
  3852. if ( $mode eq "before" )
  3853. {
  3854. mtr_add_arg($args, "--record");
  3855. }
  3856. my $res = mtr_run_test($exe_mysqltest,$args,
  3857. "include/check-testcase.test", "", "", "");
  3858. if ( $res == 1 and $mode eq "after")
  3859. {
  3860. mtr_run("diff",["-u",
  3861. "$opt_vardir/tmp/$name.result",
  3862. "$opt_vardir/tmp/$name.reject"],
  3863. "", "", "", "");
  3864. }
  3865. elsif ( $res )
  3866. {
  3867. mtr_error("Could not execute 'check-testcase' $mode testcase");
  3868. }
  3869. return $res;
  3870. }
  3871. ##############################################################################
  3872. #
  3873. # Report the features that were compiled in
  3874. #
  3875. ##############################################################################
  3876. sub run_report_features () {
  3877. my $args;
  3878. if ( ! $glob_use_embedded_server )
  3879. {
  3880. mysqld_start($master->[0],[],[]);
  3881. if ( ! $master->[0]->{'pid'} )
  3882. {
  3883. mtr_error("Can't start the mysqld server");
  3884. }
  3885. mysqld_wait_started($master->[0]);
  3886. }
  3887. my $tinfo = {};
  3888. $tinfo->{'name'} = 'report features';
  3889. $tinfo->{'result_file'} = undef;
  3890. $tinfo->{'component_id'} = 'mysqld';
  3891. $tinfo->{'path'} = 'include/report-features.test';
  3892. $tinfo->{'timezone'}= "GMT-3";
  3893. $tinfo->{'slave_num'} = 0;
  3894. $tinfo->{'master_opt'} = [];
  3895. $tinfo->{'slave_opt'} = [];
  3896. $tinfo->{'slave_mi'} = [];
  3897. $tinfo->{'comment'} = 'report server features';
  3898. run_mysqltest($tinfo);
  3899. if ( ! $glob_use_embedded_server )
  3900. {
  3901. stop_all_servers();
  3902. }
  3903. }
  3904. sub run_mysqltest ($) {
  3905. my ($tinfo)= @_;
  3906. my $exe= $exe_mysqltest;
  3907. my $args;
  3908. mtr_init_args(\$args);
  3909. mtr_add_arg($args, "--no-defaults");
  3910. mtr_add_arg($args, "--silent");
  3911. mtr_add_arg($args, "--skip-safemalloc");
  3912. mtr_add_arg($args, "--tmpdir=%s", $opt_tmpdir);
  3913. mtr_add_arg($args, "--character-sets-dir=%s", $path_charsetsdir);
  3914. # Log line number and time for each line in .test file
  3915. mtr_add_arg($args, "--mark-progress")
  3916. if $opt_mark_progress;
  3917. if ($tinfo->{'component_id'} eq 'im')
  3918. {
  3919. mtr_add_arg($args, "--socket=%s", $instance_manager->{'path_sock'});
  3920. mtr_add_arg($args, "--port=%d", $instance_manager->{'port'});
  3921. mtr_add_arg($args, "--user=%s", $instance_manager->{'admin_login'});
  3922. mtr_add_arg($args, "--password=%s", $instance_manager->{'admin_password'});
  3923. }
  3924. else # component_id == mysqld
  3925. {
  3926. mtr_add_arg($args, "--socket=%s", $master->[0]->{'path_sock'});
  3927. mtr_add_arg($args, "--port=%d", $master->[0]->{'port'});
  3928. mtr_add_arg($args, "--database=test");
  3929. mtr_add_arg($args, "--user=%s", $opt_user);
  3930. mtr_add_arg($args, "--password=");
  3931. }
  3932. if ( $opt_ps_protocol )
  3933. {
  3934. mtr_add_arg($args, "--ps-protocol");
  3935. }
  3936. if ( $opt_sp_protocol )
  3937. {
  3938. mtr_add_arg($args, "--sp-protocol");
  3939. }
  3940. if ( $opt_view_protocol )
  3941. {
  3942. mtr_add_arg($args, "--view-protocol");
  3943. }
  3944. if ( $opt_cursor_protocol )
  3945. {
  3946. mtr_add_arg($args, "--cursor-protocol");
  3947. }
  3948. if ( $opt_strace_client )
  3949. {
  3950. $exe= "strace"; # FIXME there are ktrace, ....
  3951. mtr_add_arg($args, "-o");
  3952. mtr_add_arg($args, "%s/log/mysqltest.strace", $opt_vardir);
  3953. mtr_add_arg($args, "$exe_mysqltest");
  3954. }
  3955. if ( $opt_timer )
  3956. {
  3957. mtr_add_arg($args, "--timer-file=%s/log/timer", $opt_vardir);
  3958. }
  3959. if ( $opt_compress )
  3960. {
  3961. mtr_add_arg($args, "--compress");
  3962. }
  3963. if ( $opt_sleep )
  3964. {
  3965. mtr_add_arg($args, "--sleep=%d", $opt_sleep);
  3966. }
  3967. if ( $opt_debug )
  3968. {
  3969. mtr_add_arg($args, "--debug=d:t:A,%s/log/mysqltest.trace",
  3970. $path_vardir_trace);
  3971. }
  3972. if ( $opt_ssl_supported )
  3973. {
  3974. mtr_add_arg($args, "--ssl-ca=%s/std_data/cacert.pem",
  3975. $glob_mysql_test_dir);
  3976. mtr_add_arg($args, "--ssl-cert=%s/std_data/client-cert.pem",
  3977. $glob_mysql_test_dir);
  3978. mtr_add_arg($args, "--ssl-key=%s/std_data/client-key.pem",
  3979. $glob_mysql_test_dir);
  3980. }
  3981. if ( $opt_ssl )
  3982. {
  3983. # Turn on SSL for _all_ test cases if option --ssl was used
  3984. mtr_add_arg($args, "--ssl");
  3985. }
  3986. elsif ( $opt_ssl_supported )
  3987. {
  3988. mtr_add_arg($args, "--skip-ssl");
  3989. }
  3990. # ----------------------------------------------------------------------
  3991. # If embedded server, we create server args to give mysqltest to pass on
  3992. # ----------------------------------------------------------------------
  3993. if ( $glob_use_embedded_server )
  3994. {
  3995. mysqld_arguments($args,$master->[0],$tinfo->{'master_opt'},[]);
  3996. }
  3997. # ----------------------------------------------------------------------
  3998. # export MYSQL_TEST variable containing <path>/mysqltest <args>
  3999. # ----------------------------------------------------------------------
  4000. $ENV{'MYSQL_TEST'}=
  4001. mtr_native_path($exe_mysqltest) . " " . join(" ", @$args);
  4002. # ----------------------------------------------------------------------
  4003. # Add arguments that should not go into the MYSQL_TEST env var
  4004. # ----------------------------------------------------------------------
  4005. if ( $opt_valgrind_mysqltest )
  4006. {
  4007. # Prefix the Valgrind options to the argument list.
  4008. # We do this here, since we do not want to Valgrind the nested invocations
  4009. # of mysqltest; that would mess up the stderr output causing test failure.
  4010. my @args_saved = @$args;
  4011. mtr_init_args(\$args);
  4012. valgrind_arguments($args, \$exe);
  4013. mtr_add_arg($args, "%s", $_) for @args_saved;
  4014. }
  4015. mtr_add_arg($args, "--test-file=%s", $tinfo->{'path'});
  4016. if ( defined $tinfo->{'result_file'} ) {
  4017. mtr_add_arg($args, "--result-file=%s", $tinfo->{'result_file'});
  4018. }
  4019. if ( $opt_record )
  4020. {
  4021. mtr_add_arg($args, "--record");
  4022. }
  4023. if ( $opt_client_gdb )
  4024. {
  4025. gdb_arguments(\$args, \$exe, "client");
  4026. }
  4027. elsif ( $opt_client_ddd )
  4028. {
  4029. ddd_arguments(\$args, \$exe, "client");
  4030. }
  4031. elsif ( $opt_client_debugger )
  4032. {
  4033. debugger_arguments(\$args, \$exe, "client");
  4034. }
  4035. if ( $opt_check_testcases )
  4036. {
  4037. foreach my $mysqld (@{$master}, @{$slave})
  4038. {
  4039. if ($mysqld->{'pid'})
  4040. {
  4041. run_check_testcase("before", $mysqld);
  4042. }
  4043. }
  4044. }
  4045. my $res = mtr_run_test($exe,$args,"","",$path_timefile,"");
  4046. if ( $opt_check_testcases )
  4047. {
  4048. foreach my $mysqld (@{$master}, @{$slave})
  4049. {
  4050. if ($mysqld->{'pid'})
  4051. {
  4052. if (run_check_testcase("after", $mysqld))
  4053. {
  4054. # Check failed, mark the test case with that info
  4055. $tinfo->{'check_testcase_failed'}= 1;
  4056. }
  4057. }
  4058. }
  4059. }
  4060. return $res;
  4061. }
  4062. #
  4063. # Modify the exe and args so that program is run in gdb in xterm
  4064. #
  4065. sub gdb_arguments {
  4066. my $args= shift;
  4067. my $exe= shift;
  4068. my $type= shift;
  4069. # Write $args to gdb init file
  4070. my $str= join(" ", @$$args);
  4071. my $gdb_init_file= "$opt_tmpdir/gdbinit.$type";
  4072. # Remove the old gdbinit file
  4073. unlink($gdb_init_file);
  4074. if ( $type eq "client" )
  4075. {
  4076. # write init file for client
  4077. mtr_tofile($gdb_init_file,
  4078. "set args $str\n" .
  4079. "break main\n");
  4080. }
  4081. else
  4082. {
  4083. # write init file for mysqld
  4084. mtr_tofile($gdb_init_file,
  4085. "set args $str\n" .
  4086. "break mysql_parse\n" .
  4087. "commands 1\n" .
  4088. "disable 1\n" .
  4089. "end\n" .
  4090. "run");
  4091. }
  4092. if ( $opt_manual_gdb )
  4093. {
  4094. print "\nTo start gdb for $type, type in another window:\n";
  4095. print "gdb -cd $glob_mysql_test_dir -x $gdb_init_file $$exe\n";
  4096. # Indicate the exe should not be started
  4097. $$exe= undef;
  4098. return;
  4099. }
  4100. $$args= [];
  4101. mtr_add_arg($$args, "-title");
  4102. mtr_add_arg($$args, "$type");
  4103. mtr_add_arg($$args, "-e");
  4104. if ( $exe_libtool )
  4105. {
  4106. mtr_add_arg($$args, $exe_libtool);
  4107. mtr_add_arg($$args, "--mode=execute");
  4108. }
  4109. mtr_add_arg($$args, "gdb");
  4110. mtr_add_arg($$args, "-x");
  4111. mtr_add_arg($$args, "$gdb_init_file");
  4112. mtr_add_arg($$args, "$$exe");
  4113. $$exe= "xterm";
  4114. }
  4115. #
  4116. # Modify the exe and args so that program is run in ddd
  4117. #
  4118. sub ddd_arguments {
  4119. my $args= shift;
  4120. my $exe= shift;
  4121. my $type= shift;
  4122. # Write $args to ddd init file
  4123. my $str= join(" ", @$$args);
  4124. my $gdb_init_file= "$opt_tmpdir/gdbinit.$type";
  4125. # Remove the old gdbinit file
  4126. unlink($gdb_init_file);
  4127. if ( $type eq "client" )
  4128. {
  4129. # write init file for client
  4130. mtr_tofile($gdb_init_file,
  4131. "set args $str\n" .
  4132. "break main\n");
  4133. }
  4134. else
  4135. {
  4136. # write init file for mysqld
  4137. mtr_tofile($gdb_init_file,
  4138. "file $$exe\n" .
  4139. "set args $str\n" .
  4140. "break mysql_parse\n" .
  4141. "commands 1\n" .
  4142. "disable 1\n" .
  4143. "end");
  4144. }
  4145. if ( $opt_manual_ddd )
  4146. {
  4147. print "\nTo start ddd for $type, type in another window:\n";
  4148. print "ddd -cd $glob_mysql_test_dir -x $gdb_init_file $$exe\n";
  4149. # Indicate the exe should not be started
  4150. $$exe= undef;
  4151. return;
  4152. }
  4153. my $save_exe= $$exe;
  4154. $$args= [];
  4155. if ( $exe_libtool )
  4156. {
  4157. $$exe= $exe_libtool;
  4158. mtr_add_arg($$args, "--mode=execute");
  4159. mtr_add_arg($$args, "ddd");
  4160. }
  4161. else
  4162. {
  4163. $$exe= "ddd";
  4164. }
  4165. mtr_add_arg($$args, "--command=$gdb_init_file");
  4166. mtr_add_arg($$args, "$save_exe");
  4167. }
  4168. #
  4169. # Modify the exe and args so that program is run in the selected debugger
  4170. #
  4171. sub debugger_arguments {
  4172. my $args= shift;
  4173. my $exe= shift;
  4174. my $debugger= $opt_debugger || $opt_client_debugger;
  4175. if ( $debugger =~ /vcexpress|vc|devenv/ )
  4176. {
  4177. # vc[express] /debugexe exe arg1 .. argn
  4178. # Add /debugexe and name of the exe before args
  4179. unshift(@$$args, "/debugexe");
  4180. unshift(@$$args, "$$exe");
  4181. # Set exe to debuggername
  4182. $$exe= $debugger;
  4183. }
  4184. elsif ( $debugger =~ /windbg/ )
  4185. {
  4186. # windbg exe arg1 .. argn
  4187. # Add name of the exe before args
  4188. unshift(@$$args, "$$exe");
  4189. # Set exe to debuggername
  4190. $$exe= $debugger;
  4191. }
  4192. elsif ( $debugger eq "dbx" )
  4193. {
  4194. # xterm -e dbx -r exe arg1 .. argn
  4195. unshift(@$$args, $$exe);
  4196. unshift(@$$args, "-r");
  4197. unshift(@$$args, $debugger);
  4198. unshift(@$$args, "-e");
  4199. $$exe= "xterm";
  4200. }
  4201. else
  4202. {
  4203. mtr_error("Unknown argument \"$debugger\" passed to --debugger");
  4204. }
  4205. }
  4206. #
  4207. # Modify the exe and args so that program is run in valgrind
  4208. #
  4209. sub valgrind_arguments {
  4210. my $args= shift;
  4211. my $exe= shift;
  4212. if ( $opt_callgrind)
  4213. {
  4214. mtr_add_arg($args, "--tool=callgrind");
  4215. mtr_add_arg($args, "--base=$opt_vardir/log");
  4216. }
  4217. else
  4218. {
  4219. mtr_add_arg($args, "--tool=memcheck"); # From >= 2.1.2 needs this option
  4220. mtr_add_arg($args, "--alignment=8");
  4221. mtr_add_arg($args, "--leak-check=yes");
  4222. mtr_add_arg($args, "--num-callers=16");
  4223. mtr_add_arg($args, "--suppressions=%s/valgrind.supp", $glob_mysql_test_dir)
  4224. if -f "$glob_mysql_test_dir/valgrind.supp";
  4225. }
  4226. # Add valgrind options, can be overriden by user
  4227. mtr_add_arg($args, '%s', $_) for (split(' ', $opt_valgrind_options));
  4228. mtr_add_arg($args, $$exe);
  4229. $$exe= $opt_valgrind_path || "valgrind";
  4230. if ($exe_libtool)
  4231. {
  4232. # Add "libtool --mode-execute" before the test to execute
  4233. # if running in valgrind(to avoid valgrinding bash)
  4234. unshift(@$args, "--mode=execute", $$exe);
  4235. $$exe= $exe_libtool;
  4236. }
  4237. }
  4238. ##############################################################################
  4239. #
  4240. # Usage
  4241. #
  4242. ##############################################################################
  4243. sub usage ($) {
  4244. my $message= shift;
  4245. if ( $message )
  4246. {
  4247. print STDERR "$message\n";
  4248. }
  4249. print <<HERE;
  4250. $0 [ OPTIONS ] [ TESTCASE ]
  4251. Options to control what engine/variation to run
  4252. embedded-server Use the embedded server, i.e. no mysqld daemons
  4253. ps-protocol Use the binary protocol between client and server
  4254. cursor-protocol Use the cursor protocol between client and server
  4255. (implies --ps-protocol)
  4256. view-protocol Create a view to execute all non updating queries
  4257. sp-protocol Create a stored procedure to execute all queries
  4258. compress Use the compressed protocol between client and server
  4259. ssl Use ssl protocol between client and server
  4260. skip-ssl Dont start server with support for ssl connections
  4261. bench Run the benchmark suite
  4262. small-bench Run the benchmarks with --small-tests --small-tables
  4263. ndb|with-ndbcluster Use cluster as default table type
  4264. vs-config Visual Studio configuration used to create executables
  4265. (default: MTR_VS_CONFIG environment variable)
  4266. Options to control directories to use
  4267. benchdir=DIR The directory where the benchmark suite is stored
  4268. (default: ../../mysql-bench)
  4269. tmpdir=DIR The directory where temporary files are stored
  4270. (default: ./var/tmp).
  4271. vardir=DIR The directory where files generated from the test run
  4272. is stored (default: ./var). Specifying a ramdisk or
  4273. tmpfs will speed up tests.
  4274. mem Run testsuite in "memory" using tmpfs or ramdisk
  4275. Attempts to find a suitable location
  4276. using a builtin list of standard locations
  4277. for tmpfs (/dev/shm)
  4278. The option can also be set using environment
  4279. variable MTR_MEM=[DIR]
  4280. Options to control what test suites or cases to run
  4281. force Continue to run the suite after failure
  4282. with-ndbcluster-only Run only tests that include "ndb" in the filename
  4283. skip-ndb[cluster] Skip all tests that need cluster
  4284. skip-ndb[cluster]-slave Skip all tests that need a slave cluster
  4285. ndb-extra Run extra tests from ndb directory
  4286. do-test=PREFIX Run test cases which name are prefixed with PREFIX
  4287. start-from=PREFIX Run test cases starting from test prefixed with PREFIX
  4288. suite=NAME Run the test suite named NAME. The default is "main"
  4289. skip-rpl Skip the replication test cases.
  4290. skip-im Don't start IM, and skip the IM test cases
  4291. skip-test=PREFIX Skip test cases which name are prefixed with PREFIX
  4292. big-test Set the environment variable BIG_TEST, which can be
  4293. checked from test cases.
  4294. Options that specify ports
  4295. master_port=PORT Specify the port number used by the first master
  4296. slave_port=PORT Specify the port number used by the first slave
  4297. ndbcluster-port=PORT Specify the port number used by cluster
  4298. ndbcluster-port-slave=PORT Specify the port number used by slave cluster
  4299. mtr-build-thread=# Specify unique collection of ports. Can also be set by
  4300. setting the environment variable MTR_BUILD_THREAD.
  4301. Options for test case authoring
  4302. record TESTNAME (Re)genereate the result file for TESTNAME
  4303. check-testcases Check testcases for sideeffects
  4304. mark-progress Log line number and elapsed time to <testname>.progress
  4305. Options that pass on options
  4306. mysqld=ARGS Specify additional arguments to "mysqld"
  4307. Options to run test on running server
  4308. extern Use running server for tests
  4309. ndb-connectstring=STR Use running cluster, and connect using STR
  4310. ndb-connectstring-slave=STR Use running slave cluster, and connect using STR
  4311. user=USER User for connection to extern server
  4312. socket=PATH Socket for connection to extern server
  4313. Options for debugging the product
  4314. client-ddd Start mysqltest client in ddd
  4315. client-debugger=NAME Start mysqltest in the selected debugger
  4316. client-gdb Start mysqltest client in gdb
  4317. ddd Start mysqld in ddd
  4318. debug Dump trace output for all servers and client programs
  4319. debugger=NAME Start mysqld in the selected debugger
  4320. gdb Start the mysqld(s) in gdb
  4321. manual-debug Let user manually start mysqld in debugger, before
  4322. running test(s)
  4323. manual-gdb Let user manually start mysqld in gdb, before running
  4324. test(s)
  4325. manual-ddd Let user manually start mysqld in ddd, before running
  4326. test(s)
  4327. master-binary=PATH Specify the master "mysqld" to use
  4328. slave-binary=PATH Specify the slave "mysqld" to use
  4329. strace-client Create strace output for mysqltest client
  4330. max-save-core Limit the number of core files saved (to avoid filling
  4331. up disks for heavily crashing server). Defaults to
  4332. $opt_max_save_core, set to 0 for no limit.
  4333. Options for coverage, profiling etc
  4334. gcov FIXME
  4335. gprof FIXME
  4336. valgrind Run the "mysqltest" and "mysqld" executables using
  4337. valgrind with options($default_valgrind_options)
  4338. valgrind-all Synonym for --valgrind
  4339. valgrind-mysqltest Run the "mysqltest" and "mysql_client_test" executable
  4340. with valgrind
  4341. valgrind-mysqld Run the "mysqld" executable with valgrind
  4342. valgrind-options=ARGS Options to give valgrind, replaces default options
  4343. valgrind-path=[EXE] Path to the valgrind executable
  4344. callgrind Instruct valgrind to use callgrind
  4345. Misc options
  4346. comment=STR Write STR to the output
  4347. notimer Don't show test case execution time
  4348. script-debug Debug this script itself
  4349. verbose More verbose output
  4350. start-and-exit Only initialize and start the servers, using the
  4351. startup settings for the specified test case (if any)
  4352. start-dirty Only start the servers (without initialization) for
  4353. the specified test case (if any)
  4354. fast Don't try to clean up from earlier runs
  4355. reorder Reorder tests to get fewer server restarts
  4356. help Get this help text
  4357. unified-diff | udiff When presenting differences, use unified diff
  4358. testcase-timeout=MINUTES Max test case run time (default $default_testcase_timeout)
  4359. suite-timeout=MINUTES Max test suite run time (default $default_suite_timeout)
  4360. warnings | log-warnings Pass --log-warnings to mysqld
  4361. sleep=SECONDS Passed to mysqltest, will be used as fixed sleep time
  4362. Deprecated options
  4363. with-openssl Deprecated option for ssl
  4364. HERE
  4365. mtr_exit(1);
  4366. }