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.

5287 lines
148 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
18 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
BUG#31277 - myisamchk --unpack corrupts a table With certain data sets (when compressed record length gets bigger than uncompressed) myisamchk --unpack may corrupt data file. Fixed that record length was wrongly restored from compressed table. myisam/mi_check.c: With compressed tables compressed record length may be bigger than pack_reclength, thus we may allocate insufficient memory for record buffer. Let single function allocate record buffer, performing needed record length calculations. Still, it is not doable with parallel repair, as it allocates needed record buffers at once. For parellel repair added better record length calculation. myisam/mi_open.c: When calculating record buffer size, take into account that compressed record length may be bigger than uncompressed. myisam/mi_packrec.c: With certain data set share->max_pack_length (compressed record length) may be bigger than share->base.pack_reclength (packed record length). set_if_bigger(pack_reclength, max_pack_length) in this case causes myisamchk --unpack to write extra garbage, whereas pack_reclength remains the same in new index file. As a result we get unreadable table. myisam/myisamchk.c: With compressed tables compressed record length may be bigger than pack_reclength, thus we may allocate insufficient memory for record buffer. Let single function allocate record buffer, performing needed record length calculations. mysql-test/mysql-test-run.pl: Environment variables to execute myisamchk and myisampack. mysql-test/r/myisampack.result: New BitKeeper file ``mysql-test/r/myisampack.result'' mysql-test/t/myisampack.test: New BitKeeper file ``mysql-test/t/myisampack.test''
18 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
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
Fix for Bug#35335 funcs_1: Some tests fail within load_file during pushbuild runs Solution: 1. Move files with input data used in load_file, load data etc. from suite/funcs_1/<whatever> to std_data 2. Use for testsuite funcs_1 the server option --secure-file-priv=<MYSQLTEST_VARDIR> 3. Outfiles have to be stored under MYSQLTEST_VARDIR + changes according to WL#4304 Cleanup in funcs_1 tests - backport of fixes/improvements made in 5.1 to 5.0 The differences between scripts in 5.0 and 5.1 cause much additional and annoying work during any upmerge. - replace error numbers with names - improved comments - improved formatting - Unify storage engine names so that result files for storage engine variants do not differ (some tests) - remove a script no more used (tests are done in other scripts) BitKeeper/deleted/.del-triggers_master.test: Delete: mysql-test/suite/funcs_1/triggers/triggers_master.test mysql-test/std_data/funcs_1/innodb_tb1.txt: Rename: mysql-test/suite/funcs_1/data/innodb_tb1.txt -> mysql-test/std_data/funcs_1/innodb_tb1.txt mysql-test/std_data/funcs_1/innodb_tb2.txt: Rename: mysql-test/suite/funcs_1/data/innodb_tb2.txt -> mysql-test/std_data/funcs_1/innodb_tb2.txt mysql-test/std_data/funcs_1/innodb_tb3.txt: Rename: mysql-test/suite/funcs_1/data/innodb_tb3.txt -> mysql-test/std_data/funcs_1/innodb_tb3.txt mysql-test/std_data/funcs_1/innodb_tb4.txt: Rename: mysql-test/suite/funcs_1/data/innodb_tb4.txt -> mysql-test/std_data/funcs_1/innodb_tb4.txt mysql-test/std_data/funcs_1/memory_tb1.txt: Rename: mysql-test/suite/funcs_1/data/memory_tb1.txt -> mysql-test/std_data/funcs_1/memory_tb1.txt mysql-test/std_data/funcs_1/memory_tb2.txt: Rename: mysql-test/suite/funcs_1/data/memory_tb2.txt -> mysql-test/std_data/funcs_1/memory_tb2.txt mysql-test/std_data/funcs_1/memory_tb3.txt: Rename: mysql-test/suite/funcs_1/data/memory_tb3.txt -> mysql-test/std_data/funcs_1/memory_tb3.txt mysql-test/std_data/funcs_1/memory_tb4.txt: Rename: mysql-test/suite/funcs_1/data/memory_tb4.txt -> mysql-test/std_data/funcs_1/memory_tb4.txt mysql-test/std_data/funcs_1/myisam_tb1.txt: Rename: mysql-test/suite/funcs_1/data/myisam_tb1.txt -> mysql-test/std_data/funcs_1/myisam_tb1.txt mysql-test/std_data/funcs_1/myisam_tb2.txt: Rename: mysql-test/suite/funcs_1/data/myisam_tb2.txt -> mysql-test/std_data/funcs_1/myisam_tb2.txt mysql-test/std_data/funcs_1/myisam_tb3.txt: Rename: mysql-test/suite/funcs_1/data/myisam_tb3.txt -> mysql-test/std_data/funcs_1/myisam_tb3.txt mysql-test/std_data/funcs_1/myisam_tb4.txt: Rename: mysql-test/suite/funcs_1/data/myisam_tb4.txt -> mysql-test/std_data/funcs_1/myisam_tb4.txt mysql-test/std_data/funcs_1/t3.txt: Rename: mysql-test/suite/funcs_1/data/t3.txt -> mysql-test/std_data/funcs_1/t3.txt mysql-test/std_data/funcs_1/t4.txt: Rename: mysql-test/suite/funcs_1/data/t4.txt -> mysql-test/std_data/funcs_1/t4.txt mysql-test/std_data/funcs_1/t7.txt: Rename: mysql-test/suite/funcs_1/data/t7.txt -> mysql-test/std_data/funcs_1/t7.txt mysql-test/std_data/funcs_1/t9.txt: Rename: mysql-test/suite/funcs_1/data/t9.txt -> mysql-test/std_data/funcs_1/t9.txt mysql-test/Makefile.am: Introduce installation of funcs_1 files in std_data. mysql-test/mysql-test-run.pl: The tests within funcs_1 need a server started with --secure-file-priv=<MYSQLTEST_VARDIR> like the main regression tests. mysql-test/suite/funcs_1/README.txt: Extended description mysql-test/suite/funcs_1/datadict/datadict_bug_12777.inc: Cleanup mysql-test/suite/funcs_1/datadict/datadict_load.inc: Cleanup mysql-test/suite/funcs_1/include/innodb_tb1.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/innodb_tb2.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/innodb_tb3.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/innodb_tb4.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/memory_tb1.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/memory_tb2.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/memory_tb3.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/memory_tb4.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/myisam_tb1.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/myisam_tb2.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/myisam_tb3.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/myisam_tb4.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/sp_tb.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/r/innodb_func_view.result: Updated results mysql-test/suite/funcs_1/r/innodb_storedproc_02.result: Updated results mysql-test/suite/funcs_1/r/innodb_storedproc_03.result: Updated results mysql-test/suite/funcs_1/r/innodb_storedproc_06.result: Updated results mysql-test/suite/funcs_1/r/innodb_storedproc_07.result: Updated results mysql-test/suite/funcs_1/r/innodb_storedproc_08.result: Updated results mysql-test/suite/funcs_1/r/innodb_storedproc_10.result: Updated results mysql-test/suite/funcs_1/r/innodb_trig_0102.result: Updated results mysql-test/suite/funcs_1/r/innodb_trig_03.result: Updated results mysql-test/suite/funcs_1/r/innodb_trig_0407.result: Updated results mysql-test/suite/funcs_1/r/innodb_trig_08.result: Updated results mysql-test/suite/funcs_1/r/innodb_trig_09.result: Updated results mysql-test/suite/funcs_1/r/innodb_trig_1011ext.result: Updated results mysql-test/suite/funcs_1/r/innodb_trig_frkey.result: Updated results mysql-test/suite/funcs_1/r/innodb_views.result: Updated results mysql-test/suite/funcs_1/r/is_columns_innodb.result: Updated results mysql-test/suite/funcs_1/r/is_columns_memory.result: Updated results mysql-test/suite/funcs_1/r/is_columns_myisam.result: Updated results mysql-test/suite/funcs_1/r/is_columns_ndb.result: Updated results mysql-test/suite/funcs_1/r/is_tables_innodb.result: Updated results mysql-test/suite/funcs_1/r/is_tables_memory.result: Updated results mysql-test/suite/funcs_1/r/is_tables_myisam.result: Updated results mysql-test/suite/funcs_1/r/is_tables_ndb.result: Updated results mysql-test/suite/funcs_1/r/memory_func_view.result: Updated results mysql-test/suite/funcs_1/r/memory_storedproc_02.result: Updated results mysql-test/suite/funcs_1/r/memory_storedproc_03.result: Updated results mysql-test/suite/funcs_1/r/memory_storedproc_06.result: Updated results mysql-test/suite/funcs_1/r/memory_storedproc_07.result: Updated results mysql-test/suite/funcs_1/r/memory_storedproc_08.result: Updated results mysql-test/suite/funcs_1/r/memory_storedproc_10.result: Updated results mysql-test/suite/funcs_1/r/memory_trig_0102.result: Updated results mysql-test/suite/funcs_1/r/memory_trig_03.result: Updated results mysql-test/suite/funcs_1/r/memory_trig_0407.result: Updated results mysql-test/suite/funcs_1/r/memory_trig_08.result: Updated results mysql-test/suite/funcs_1/r/memory_trig_09.result: Updated results mysql-test/suite/funcs_1/r/memory_trig_1011ext.result: Updated results mysql-test/suite/funcs_1/r/memory_views.result: Updated results mysql-test/suite/funcs_1/r/myisam_func_view.result: Updated results mysql-test/suite/funcs_1/r/myisam_storedproc_02.result: Updated results mysql-test/suite/funcs_1/r/myisam_storedproc_03.result: Updated results mysql-test/suite/funcs_1/r/myisam_storedproc_06.result: Updated results mysql-test/suite/funcs_1/r/myisam_storedproc_07.result: Updated results mysql-test/suite/funcs_1/r/myisam_storedproc_08.result: Updated results mysql-test/suite/funcs_1/r/myisam_storedproc_10.result: Updated results mysql-test/suite/funcs_1/r/myisam_trig_0102.result: Updated results mysql-test/suite/funcs_1/r/myisam_trig_03.result: Updated results mysql-test/suite/funcs_1/r/myisam_trig_0407.result: Updated results mysql-test/suite/funcs_1/r/myisam_trig_08.result: Updated results mysql-test/suite/funcs_1/r/myisam_trig_09.result: Updated results mysql-test/suite/funcs_1/r/myisam_trig_1011ext.result: Updated results mysql-test/suite/funcs_1/r/myisam_views.result: Updated results mysql-test/suite/funcs_1/storedproc/cleanup_sp_tb.inc: "--echo" instead of SQL command. mysql-test/suite/funcs_1/storedproc/load_sp_tb.inc: Adjustment to new storage place of infile + correct formatting. mysql-test/suite/funcs_1/storedproc/storedproc_02.inc: Backport from 5.1 + correct formatting. mysql-test/suite/funcs_1/storedproc/storedproc_03.inc: Minor improvements + correct formatting. mysql-test/suite/funcs_1/storedproc/storedproc_06.inc: Backport from 5.1 + correct formatting mysql-test/suite/funcs_1/storedproc/storedproc_10.inc: Backport from 5.1. + correct formatting mysql-test/suite/funcs_1/t/innodb_trig_0407.test: Cleanup mysql-test/suite/funcs_1/t/is_basics_mixed.test: Adjustment to new storage place of outfile. mysql-test/suite/funcs_1/t/memory_storedproc_02.test: Cleanup mysql-test/suite/funcs_1/t/memory_storedproc_03.test: Cleanup mysql-test/suite/funcs_1/t/memory_storedproc_06.test: Cleanup mysql-test/suite/funcs_1/t/memory_storedproc_07.test: Cleanup mysql-test/suite/funcs_1/t/memory_storedproc_08.test: Cleanup mysql-test/suite/funcs_1/t/memory_storedproc_10.test: Cleanup mysql-test/suite/funcs_1/t/myisam_storedproc_02.test: Cleanup mysql-test/suite/funcs_1/t/myisam_storedproc_03.test: Cleanup mysql-test/suite/funcs_1/t/myisam_storedproc_06.test: Cleanup mysql-test/suite/funcs_1/t/myisam_storedproc_07.test: Cleanup mysql-test/suite/funcs_1/t/myisam_storedproc_08.test: Cleanup mysql-test/suite/funcs_1/t/myisam_storedproc_10.test: Cleanup mysql-test/suite/funcs_1/triggers/trig_frkey2.inc: Cleanup mysql-test/suite/funcs_1/triggers/triggers_0102.inc: Cleanup mysql-test/suite/funcs_1/triggers/triggers_03.inc: Backport from 5.1 mysql-test/suite/funcs_1/triggers/triggers_0407.inc: Backport from 5.1 mysql-test/suite/funcs_1/triggers/triggers_08.inc: Backport from 5.1 mysql-test/suite/funcs_1/triggers/triggers_09.inc: Backport from 5.1 mysql-test/suite/funcs_1/triggers/triggers_1011ext.inc: Backport from 5.1 mysql-test/suite/funcs_1/views/func_view.inc: Backport from 5.1 mysql-test/suite/funcs_1/views/views_master.inc: Cleanup mysql-test/std_data/funcs_1/load_file.txt: New BitKeeper file ``mysql-test/std_data/funcs_1/load_file.txt''
18 years ago
Fix for Bug#35335 funcs_1: Some tests fail within load_file during pushbuild runs Solution: 1. Move files with input data used in load_file, load data etc. from suite/funcs_1/<whatever> to std_data 2. Use for testsuite funcs_1 the server option --secure-file-priv=<MYSQLTEST_VARDIR> 3. Outfiles have to be stored under MYSQLTEST_VARDIR + changes according to WL#4304 Cleanup in funcs_1 tests - backport of fixes/improvements made in 5.1 to 5.0 The differences between scripts in 5.0 and 5.1 cause much additional and annoying work during any upmerge. - replace error numbers with names - improved comments - improved formatting - Unify storage engine names so that result files for storage engine variants do not differ (some tests) - remove a script no more used (tests are done in other scripts) BitKeeper/deleted/.del-triggers_master.test: Delete: mysql-test/suite/funcs_1/triggers/triggers_master.test mysql-test/std_data/funcs_1/innodb_tb1.txt: Rename: mysql-test/suite/funcs_1/data/innodb_tb1.txt -> mysql-test/std_data/funcs_1/innodb_tb1.txt mysql-test/std_data/funcs_1/innodb_tb2.txt: Rename: mysql-test/suite/funcs_1/data/innodb_tb2.txt -> mysql-test/std_data/funcs_1/innodb_tb2.txt mysql-test/std_data/funcs_1/innodb_tb3.txt: Rename: mysql-test/suite/funcs_1/data/innodb_tb3.txt -> mysql-test/std_data/funcs_1/innodb_tb3.txt mysql-test/std_data/funcs_1/innodb_tb4.txt: Rename: mysql-test/suite/funcs_1/data/innodb_tb4.txt -> mysql-test/std_data/funcs_1/innodb_tb4.txt mysql-test/std_data/funcs_1/memory_tb1.txt: Rename: mysql-test/suite/funcs_1/data/memory_tb1.txt -> mysql-test/std_data/funcs_1/memory_tb1.txt mysql-test/std_data/funcs_1/memory_tb2.txt: Rename: mysql-test/suite/funcs_1/data/memory_tb2.txt -> mysql-test/std_data/funcs_1/memory_tb2.txt mysql-test/std_data/funcs_1/memory_tb3.txt: Rename: mysql-test/suite/funcs_1/data/memory_tb3.txt -> mysql-test/std_data/funcs_1/memory_tb3.txt mysql-test/std_data/funcs_1/memory_tb4.txt: Rename: mysql-test/suite/funcs_1/data/memory_tb4.txt -> mysql-test/std_data/funcs_1/memory_tb4.txt mysql-test/std_data/funcs_1/myisam_tb1.txt: Rename: mysql-test/suite/funcs_1/data/myisam_tb1.txt -> mysql-test/std_data/funcs_1/myisam_tb1.txt mysql-test/std_data/funcs_1/myisam_tb2.txt: Rename: mysql-test/suite/funcs_1/data/myisam_tb2.txt -> mysql-test/std_data/funcs_1/myisam_tb2.txt mysql-test/std_data/funcs_1/myisam_tb3.txt: Rename: mysql-test/suite/funcs_1/data/myisam_tb3.txt -> mysql-test/std_data/funcs_1/myisam_tb3.txt mysql-test/std_data/funcs_1/myisam_tb4.txt: Rename: mysql-test/suite/funcs_1/data/myisam_tb4.txt -> mysql-test/std_data/funcs_1/myisam_tb4.txt mysql-test/std_data/funcs_1/t3.txt: Rename: mysql-test/suite/funcs_1/data/t3.txt -> mysql-test/std_data/funcs_1/t3.txt mysql-test/std_data/funcs_1/t4.txt: Rename: mysql-test/suite/funcs_1/data/t4.txt -> mysql-test/std_data/funcs_1/t4.txt mysql-test/std_data/funcs_1/t7.txt: Rename: mysql-test/suite/funcs_1/data/t7.txt -> mysql-test/std_data/funcs_1/t7.txt mysql-test/std_data/funcs_1/t9.txt: Rename: mysql-test/suite/funcs_1/data/t9.txt -> mysql-test/std_data/funcs_1/t9.txt mysql-test/Makefile.am: Introduce installation of funcs_1 files in std_data. mysql-test/mysql-test-run.pl: The tests within funcs_1 need a server started with --secure-file-priv=<MYSQLTEST_VARDIR> like the main regression tests. mysql-test/suite/funcs_1/README.txt: Extended description mysql-test/suite/funcs_1/datadict/datadict_bug_12777.inc: Cleanup mysql-test/suite/funcs_1/datadict/datadict_load.inc: Cleanup mysql-test/suite/funcs_1/include/innodb_tb1.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/innodb_tb2.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/innodb_tb3.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/innodb_tb4.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/memory_tb1.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/memory_tb2.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/memory_tb3.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/memory_tb4.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/myisam_tb1.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/myisam_tb2.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/myisam_tb3.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/myisam_tb4.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/include/sp_tb.inc: Adjustment to new storage place of infile. mysql-test/suite/funcs_1/r/innodb_func_view.result: Updated results mysql-test/suite/funcs_1/r/innodb_storedproc_02.result: Updated results mysql-test/suite/funcs_1/r/innodb_storedproc_03.result: Updated results mysql-test/suite/funcs_1/r/innodb_storedproc_06.result: Updated results mysql-test/suite/funcs_1/r/innodb_storedproc_07.result: Updated results mysql-test/suite/funcs_1/r/innodb_storedproc_08.result: Updated results mysql-test/suite/funcs_1/r/innodb_storedproc_10.result: Updated results mysql-test/suite/funcs_1/r/innodb_trig_0102.result: Updated results mysql-test/suite/funcs_1/r/innodb_trig_03.result: Updated results mysql-test/suite/funcs_1/r/innodb_trig_0407.result: Updated results mysql-test/suite/funcs_1/r/innodb_trig_08.result: Updated results mysql-test/suite/funcs_1/r/innodb_trig_09.result: Updated results mysql-test/suite/funcs_1/r/innodb_trig_1011ext.result: Updated results mysql-test/suite/funcs_1/r/innodb_trig_frkey.result: Updated results mysql-test/suite/funcs_1/r/innodb_views.result: Updated results mysql-test/suite/funcs_1/r/is_columns_innodb.result: Updated results mysql-test/suite/funcs_1/r/is_columns_memory.result: Updated results mysql-test/suite/funcs_1/r/is_columns_myisam.result: Updated results mysql-test/suite/funcs_1/r/is_columns_ndb.result: Updated results mysql-test/suite/funcs_1/r/is_tables_innodb.result: Updated results mysql-test/suite/funcs_1/r/is_tables_memory.result: Updated results mysql-test/suite/funcs_1/r/is_tables_myisam.result: Updated results mysql-test/suite/funcs_1/r/is_tables_ndb.result: Updated results mysql-test/suite/funcs_1/r/memory_func_view.result: Updated results mysql-test/suite/funcs_1/r/memory_storedproc_02.result: Updated results mysql-test/suite/funcs_1/r/memory_storedproc_03.result: Updated results mysql-test/suite/funcs_1/r/memory_storedproc_06.result: Updated results mysql-test/suite/funcs_1/r/memory_storedproc_07.result: Updated results mysql-test/suite/funcs_1/r/memory_storedproc_08.result: Updated results mysql-test/suite/funcs_1/r/memory_storedproc_10.result: Updated results mysql-test/suite/funcs_1/r/memory_trig_0102.result: Updated results mysql-test/suite/funcs_1/r/memory_trig_03.result: Updated results mysql-test/suite/funcs_1/r/memory_trig_0407.result: Updated results mysql-test/suite/funcs_1/r/memory_trig_08.result: Updated results mysql-test/suite/funcs_1/r/memory_trig_09.result: Updated results mysql-test/suite/funcs_1/r/memory_trig_1011ext.result: Updated results mysql-test/suite/funcs_1/r/memory_views.result: Updated results mysql-test/suite/funcs_1/r/myisam_func_view.result: Updated results mysql-test/suite/funcs_1/r/myisam_storedproc_02.result: Updated results mysql-test/suite/funcs_1/r/myisam_storedproc_03.result: Updated results mysql-test/suite/funcs_1/r/myisam_storedproc_06.result: Updated results mysql-test/suite/funcs_1/r/myisam_storedproc_07.result: Updated results mysql-test/suite/funcs_1/r/myisam_storedproc_08.result: Updated results mysql-test/suite/funcs_1/r/myisam_storedproc_10.result: Updated results mysql-test/suite/funcs_1/r/myisam_trig_0102.result: Updated results mysql-test/suite/funcs_1/r/myisam_trig_03.result: Updated results mysql-test/suite/funcs_1/r/myisam_trig_0407.result: Updated results mysql-test/suite/funcs_1/r/myisam_trig_08.result: Updated results mysql-test/suite/funcs_1/r/myisam_trig_09.result: Updated results mysql-test/suite/funcs_1/r/myisam_trig_1011ext.result: Updated results mysql-test/suite/funcs_1/r/myisam_views.result: Updated results mysql-test/suite/funcs_1/storedproc/cleanup_sp_tb.inc: "--echo" instead of SQL command. mysql-test/suite/funcs_1/storedproc/load_sp_tb.inc: Adjustment to new storage place of infile + correct formatting. mysql-test/suite/funcs_1/storedproc/storedproc_02.inc: Backport from 5.1 + correct formatting. mysql-test/suite/funcs_1/storedproc/storedproc_03.inc: Minor improvements + correct formatting. mysql-test/suite/funcs_1/storedproc/storedproc_06.inc: Backport from 5.1 + correct formatting mysql-test/suite/funcs_1/storedproc/storedproc_10.inc: Backport from 5.1. + correct formatting mysql-test/suite/funcs_1/t/innodb_trig_0407.test: Cleanup mysql-test/suite/funcs_1/t/is_basics_mixed.test: Adjustment to new storage place of outfile. mysql-test/suite/funcs_1/t/memory_storedproc_02.test: Cleanup mysql-test/suite/funcs_1/t/memory_storedproc_03.test: Cleanup mysql-test/suite/funcs_1/t/memory_storedproc_06.test: Cleanup mysql-test/suite/funcs_1/t/memory_storedproc_07.test: Cleanup mysql-test/suite/funcs_1/t/memory_storedproc_08.test: Cleanup mysql-test/suite/funcs_1/t/memory_storedproc_10.test: Cleanup mysql-test/suite/funcs_1/t/myisam_storedproc_02.test: Cleanup mysql-test/suite/funcs_1/t/myisam_storedproc_03.test: Cleanup mysql-test/suite/funcs_1/t/myisam_storedproc_06.test: Cleanup mysql-test/suite/funcs_1/t/myisam_storedproc_07.test: Cleanup mysql-test/suite/funcs_1/t/myisam_storedproc_08.test: Cleanup mysql-test/suite/funcs_1/t/myisam_storedproc_10.test: Cleanup mysql-test/suite/funcs_1/triggers/trig_frkey2.inc: Cleanup mysql-test/suite/funcs_1/triggers/triggers_0102.inc: Cleanup mysql-test/suite/funcs_1/triggers/triggers_03.inc: Backport from 5.1 mysql-test/suite/funcs_1/triggers/triggers_0407.inc: Backport from 5.1 mysql-test/suite/funcs_1/triggers/triggers_08.inc: Backport from 5.1 mysql-test/suite/funcs_1/triggers/triggers_09.inc: Backport from 5.1 mysql-test/suite/funcs_1/triggers/triggers_1011ext.inc: Backport from 5.1 mysql-test/suite/funcs_1/views/func_view.inc: Backport from 5.1 mysql-test/suite/funcs_1/views/views_master.inc: Cleanup mysql-test/std_data/funcs_1/load_file.txt: New BitKeeper file ``mysql-test/std_data/funcs_1/load_file.txt''
18 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
WL#3935 Improve mysqltest report and exitcode for diff - Move the code to generate test report to the test tool(in this case mysqltest) where the best control of what failed is - Simplify the code in mysql-test-run.pl - mysqltest will now find what diff to use in a best effort attempt using "diff -u", "diff -c" and finally dumping the two files verbatim in the report. client/mysqltest.c: - Add new option --tail-lines indicating how many lines of the result to output when generating report for a failure - Remove eval_result, noone knows what it should do and it's not used. - Add support for best effort execution of systems builtin "diff", try with "diff -u" and "diff -c" and if that fails dump the whole content of teh two files to report - Use one common function when comapring two files, used when test has completed and the result should be compared to the .result file as well as using it from myqltest's builtin diff_files command. - Output the last lines og the result so far in the report that mysqltest generates in case of a test failure. mysql-test/lib/mtr_report.pl: - Remove code for generating diff between .reject and .result file, that is handled by mysqltest(or the test tool) from now on. - Add better comments mysql-test/mysql-test-run.pl: - Remove the --udiff flag to mysql-test-run.pl, if the systems diff supports unified diff it will be used automatically - Remove the code for "mtr_show_failed_diff", the report from mysqltest will know include the diff so if mysqltest(or another test tool) fails, just display it's report what went wrong - Pass --tail-lines=20 to mysqltest to it will shos the last 20 lines from the result in the report in case of failure. mysql-test/r/mysqltest.result: Update result file now when the output from mysqltest has been sent to /dev/null mysql-test/t/mysqltest.test: - Improve tests for --diff_files - Remove temporary files in var/tmp generated in the fly - Send output from test for --diff_files to /deb/null since only the error code it returns are of interest and tyhe outpu may vary depending on what builtin diff is being used.
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
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 IO::Socket;
  62. use IO::Socket::INET;
  63. use strict;
  64. use warnings;
  65. select(STDOUT);
  66. $| = 1; # Automatically flush STDOUT
  67. our $glob_win32_perl= ($^O eq "MSWin32"); # ActiveState Win32 Perl
  68. our $glob_cygwin_perl= ($^O eq "cygwin"); # Cygwin Perl
  69. our $glob_win32= ($glob_win32_perl or $glob_cygwin_perl);
  70. our $glob_netware= ($^O eq "NetWare"); # NetWare
  71. require "lib/mtr_cases.pl";
  72. require "lib/mtr_im.pl";
  73. require "lib/mtr_process.pl";
  74. require "lib/mtr_timer.pl";
  75. require "lib/mtr_io.pl";
  76. require "lib/mtr_gcov.pl";
  77. require "lib/mtr_gprof.pl";
  78. require "lib/mtr_report.pl";
  79. require "lib/mtr_match.pl";
  80. require "lib/mtr_misc.pl";
  81. require "lib/mtr_stress.pl";
  82. require "lib/mtr_unique.pl";
  83. $Devel::Trace::TRACE= 1;
  84. ##############################################################################
  85. #
  86. # Default settings
  87. #
  88. ##############################################################################
  89. # Misc global variables
  90. our $mysql_version_id;
  91. our $glob_mysql_test_dir= undef;
  92. our $glob_mysql_bench_dir= undef;
  93. our $glob_scriptname= undef;
  94. our $glob_timers= undef;
  95. our $glob_use_running_ndbcluster= 0;
  96. our $glob_use_running_ndbcluster_slave= 0;
  97. our $glob_use_embedded_server= 0;
  98. our @glob_test_mode;
  99. our $glob_basedir;
  100. our $path_charsetsdir;
  101. our $path_client_bindir;
  102. our $path_client_libdir;
  103. our $path_language;
  104. our $path_timefile;
  105. our $path_snapshot;
  106. our $path_mysqltest_log;
  107. our $path_current_test_log;
  108. our $path_my_basedir;
  109. our $opt_vardir; # A path but set directly on cmd line
  110. our $path_vardir_trace; # unix formatted opt_vardir for trace files
  111. our $opt_tmpdir; # A path but set directly on cmd line
  112. # Visual Studio produces executables in different sub-directories based on the
  113. # configuration used to build them. To make life easier, an environment
  114. # variable or command-line option may be specified to control which set of
  115. # executables will be used by the test suite.
  116. our $opt_vs_config = $ENV{'MTR_VS_CONFIG'};
  117. our $default_vardir;
  118. our $opt_usage;
  119. our $opt_suite;
  120. our $opt_script_debug= 0; # Script debugging, enable with --script-debug
  121. our $opt_verbose= 0; # Verbose output, enable with --verbose
  122. our $exe_master_mysqld;
  123. our $exe_mysql;
  124. our $exe_mysqladmin;
  125. our $exe_mysql_upgrade;
  126. our $exe_mysqlbinlog;
  127. our $exe_mysql_client_test;
  128. our $exe_bug25714;
  129. our $exe_mysqld;
  130. our $exe_mysqlcheck;
  131. our $exe_mysqldump;
  132. our $exe_mysqlslap;
  133. our $exe_mysqlimport;
  134. our $exe_mysqlshow;
  135. our $exe_mysql_fix_system_tables;
  136. our $file_mysql_fix_privilege_tables;
  137. our $exe_mysqltest;
  138. our $exe_ndbd;
  139. our $exe_ndb_mgmd;
  140. our $exe_slave_mysqld;
  141. our $exe_im;
  142. our $exe_my_print_defaults;
  143. our $exe_perror;
  144. our $lib_udf_example;
  145. our $exe_libtool;
  146. our $opt_bench= 0;
  147. our $opt_small_bench= 0;
  148. our $opt_big_test= 0;
  149. our @opt_extra_mysqld_opt;
  150. our $opt_compress;
  151. our $opt_ssl;
  152. our $opt_skip_ssl;
  153. our $opt_ssl_supported;
  154. our $opt_ps_protocol;
  155. our $opt_sp_protocol;
  156. our $opt_cursor_protocol;
  157. our $opt_view_protocol;
  158. our $opt_debug;
  159. our $opt_do_test;
  160. our @opt_cases; # The test cases names in argv
  161. our $opt_embedded_server;
  162. our $opt_extern= 0;
  163. our $opt_socket;
  164. our $opt_fast;
  165. our $opt_force;
  166. our $opt_reorder= 0;
  167. our $opt_enable_disabled;
  168. our $opt_mem= $ENV{'MTR_MEM'};
  169. our $opt_gcov;
  170. our $opt_gcov_err;
  171. our $opt_gcov_msg;
  172. our $glob_debugger= 0;
  173. our $opt_gdb;
  174. our $opt_client_gdb;
  175. our $opt_ddd;
  176. our $opt_client_ddd;
  177. our $opt_manual_gdb;
  178. our $opt_manual_ddd;
  179. our $opt_manual_debug;
  180. our $opt_mtr_build_thread=0;
  181. our $opt_debugger;
  182. our $opt_client_debugger;
  183. our $opt_gprof;
  184. our $opt_gprof_dir;
  185. our $opt_gprof_master;
  186. our $opt_gprof_slave;
  187. our $master;
  188. our $slave;
  189. our $clusters;
  190. our $instance_manager;
  191. our $opt_master_myport;
  192. our $opt_slave_myport;
  193. our $im_port;
  194. our $im_mysqld1_port;
  195. our $im_mysqld2_port;
  196. our $opt_ndbcluster_port;
  197. our $opt_ndbconnectstring;
  198. our $opt_ndbcluster_port_slave;
  199. our $opt_ndbconnectstring_slave;
  200. our $opt_record;
  201. my $opt_report_features;
  202. our $opt_check_testcases;
  203. our $opt_mark_progress;
  204. our $opt_skip_rpl;
  205. our $max_slave_num= 0;
  206. our $max_master_num= 1;
  207. our $use_innodb;
  208. our $opt_skip_test;
  209. our $opt_skip_im;
  210. our $opt_sleep;
  211. our $opt_testcase_timeout;
  212. our $opt_suite_timeout;
  213. my $default_testcase_timeout= 15; # 15 min max
  214. my $default_suite_timeout= 180; # 3 hours max
  215. our $opt_start_and_exit;
  216. our $opt_start_dirty;
  217. our $opt_start_from;
  218. our $opt_strace_client;
  219. our $opt_timer= 1;
  220. our $opt_user;
  221. my $opt_valgrind= 0;
  222. my $opt_valgrind_mysqld= 0;
  223. my $opt_valgrind_mysqltest= 0;
  224. my @default_valgrind_args= ("--show-reachable=yes");
  225. my @valgrind_args;
  226. my $opt_valgrind_path;
  227. my $opt_callgrind;
  228. our $opt_stress= "";
  229. our $opt_stress_suite= "main";
  230. our $opt_stress_mode= "random";
  231. our $opt_stress_threads= 5;
  232. our $opt_stress_test_count= 0;
  233. our $opt_stress_loop_count= 0;
  234. our $opt_stress_test_duration= 0;
  235. our $opt_stress_init_file= "";
  236. our $opt_stress_test_file= "";
  237. our $opt_warnings;
  238. our $opt_skip_ndbcluster= 0;
  239. our $opt_skip_ndbcluster_slave= 0;
  240. our $opt_with_ndbcluster= 0;
  241. our $opt_with_ndbcluster_only= 0;
  242. our $glob_ndbcluster_supported= 0;
  243. our $opt_ndb_extra_test= 0;
  244. our $opt_skip_master_binlog= 0;
  245. our $opt_skip_slave_binlog= 0;
  246. our $exe_ndb_mgm;
  247. our $exe_ndb_waiter;
  248. our $path_ndb_tools_dir;
  249. our $path_ndb_examples_dir;
  250. our $exe_ndb_example;
  251. our $path_ndb_testrun_log;
  252. our $path_sql_dir;
  253. our @data_dir_lst;
  254. our $used_binlog_format;
  255. our $used_default_engine;
  256. our $debug_compiled_binaries;
  257. our %mysqld_variables;
  258. my $source_dist= 0;
  259. our $opt_max_save_core= 5;
  260. my $num_saved_cores= 0; # Number of core files saved in vardir/log/ so far.
  261. ######################################################################
  262. #
  263. # Function declarations
  264. #
  265. ######################################################################
  266. sub main ();
  267. sub initial_setup ();
  268. sub command_line_setup ();
  269. sub set_mtr_build_thread_ports($);
  270. sub datadir_list_setup ();
  271. sub executable_setup ();
  272. sub environment_setup ();
  273. sub kill_running_servers ();
  274. sub remove_stale_vardir ();
  275. sub setup_vardir ();
  276. sub check_ssl_support ($);
  277. sub check_running_as_root();
  278. sub check_ndbcluster_support ($);
  279. sub rm_ndbcluster_tables ($);
  280. sub ndbcluster_start_install ($);
  281. sub ndbcluster_start ($$);
  282. sub ndbcluster_wait_started ($$);
  283. sub mysqld_wait_started($);
  284. sub run_benchmarks ($);
  285. sub initialize_servers ();
  286. sub mysql_install_db ();
  287. sub install_db ($$);
  288. sub copy_install_db ($$);
  289. sub run_testcase ($);
  290. sub run_testcase_stop_servers ($$$);
  291. sub run_testcase_start_servers ($);
  292. sub run_testcase_check_skip_test($);
  293. sub report_failure_and_restart ($);
  294. sub do_before_start_master ($);
  295. sub do_before_start_slave ($);
  296. sub ndbd_start ($$$);
  297. sub ndb_mgmd_start ($);
  298. sub mysqld_start ($$$);
  299. sub mysqld_arguments ($$$$);
  300. sub stop_all_servers ();
  301. sub run_mysqltest ($);
  302. sub usage ($);
  303. ######################################################################
  304. #
  305. # Main program
  306. #
  307. ######################################################################
  308. main();
  309. sub main () {
  310. command_line_setup();
  311. check_ndbcluster_support(\%mysqld_variables);
  312. check_ssl_support(\%mysqld_variables);
  313. check_debug_support(\%mysqld_variables);
  314. executable_setup();
  315. environment_setup();
  316. signal_setup();
  317. if ( $opt_gcov )
  318. {
  319. gcov_prepare();
  320. }
  321. if ( $opt_gprof )
  322. {
  323. gprof_prepare();
  324. }
  325. if ( $opt_bench )
  326. {
  327. initialize_servers();
  328. run_benchmarks(shift); # Shift what? Extra arguments?!
  329. }
  330. elsif ( $opt_stress )
  331. {
  332. initialize_servers();
  333. run_stress_test()
  334. }
  335. else
  336. {
  337. # Figure out which tests we are going to run
  338. my $tests= collect_test_cases($opt_suite);
  339. # Turn off NDB and other similar options if no tests use it
  340. my ($need_ndbcluster,$need_im);
  341. foreach my $test (@$tests)
  342. {
  343. next if $test->{skip};
  344. $need_ndbcluster||= $test->{ndb_test};
  345. $need_im||= $test->{component_id} eq 'im';
  346. # Count max number of slaves used by a test case
  347. if ( $test->{slave_num} > $max_slave_num)
  348. {
  349. $max_slave_num= $test->{slave_num};
  350. mtr_error("Too many slaves") if $max_slave_num > 3;
  351. }
  352. # Count max number of masters used by a test case
  353. if ( $test->{master_num} > $max_master_num)
  354. {
  355. $max_master_num= $test->{master_num};
  356. mtr_error("Too many masters") if $max_master_num > 2;
  357. mtr_error("Too few masters") if $max_master_num < 1;
  358. }
  359. $use_innodb||= $test->{'innodb_test'};
  360. }
  361. # Check if cluster can be skipped
  362. if ( !$need_ndbcluster )
  363. {
  364. $opt_skip_ndbcluster= 1;
  365. $opt_skip_ndbcluster_slave= 1;
  366. }
  367. # Check if slave cluster can be skipped
  368. if ($max_slave_num == 0)
  369. {
  370. $opt_skip_ndbcluster_slave= 1;
  371. }
  372. # Check if im can be skipped
  373. if ( ! $need_im )
  374. {
  375. $opt_skip_im= 1;
  376. }
  377. initialize_servers();
  378. if ( $opt_report_features ) {
  379. run_report_features();
  380. }
  381. run_suite($opt_suite, $tests);
  382. }
  383. mtr_exit(0);
  384. }
  385. ##############################################################################
  386. #
  387. # Default settings
  388. #
  389. ##############################################################################
  390. #
  391. # When an option is no longer used by this program, it must be explicitly
  392. # ignored or else it will be passed through to mysqld. GetOptions will call
  393. # this subroutine once for each such option on the command line. See
  394. # Getopt::Long documentation.
  395. #
  396. sub warn_about_removed_option {
  397. my ($option, $value, $hash_value) = @_;
  398. warn "WARNING: This option is no longer used, and is ignored: --$option\n";
  399. }
  400. sub command_line_setup () {
  401. # These are defaults for things that are set on the command line
  402. $opt_suite= "main"; # Special default suite
  403. my $opt_comment;
  404. # Magic number -69.4 results in traditional test ports starting from 9306.
  405. set_mtr_build_thread_ports(-69.4);
  406. # If so requested, we try to avail ourselves of a unique build thread number.
  407. if ( $ENV{'MTR_BUILD_THREAD'} ) {
  408. if ( lc($ENV{'MTR_BUILD_THREAD'}) eq 'auto' ) {
  409. print "Requesting build thread... ";
  410. $ENV{'MTR_BUILD_THREAD'} = mtr_require_unique_id_and_wait("/tmp/mysql-test-ports", 200, 299);
  411. print "got ".$ENV{'MTR_BUILD_THREAD'}."\n";
  412. }
  413. }
  414. if ( $ENV{'MTR_BUILD_THREAD'} )
  415. {
  416. set_mtr_build_thread_ports($ENV{'MTR_BUILD_THREAD'});
  417. }
  418. # This is needed for test log evaluation in "gen-build-status-page"
  419. # in all cases where the calling tool does not log the commands
  420. # directly before it executes them, like "make test-force-pl" in RPM builds.
  421. print "Logging: $0 ", join(" ", @ARGV), "\n";
  422. # Read the command line
  423. # Note: Keep list, and the order, in sync with usage at end of this file
  424. # Options that are no longer used must still be processed, because all
  425. # unprocessed options are passed directly to mysqld. The user will be
  426. # warned that the option is being ignored.
  427. #
  428. # Put the complete option string here. For example, to remove the --suite
  429. # option, remove it from GetOptions() below and put 'suite|suites=s' here.
  430. my @removed_options = (
  431. );
  432. Getopt::Long::Configure("pass_through");
  433. GetOptions(
  434. # Control what engine/variation to run
  435. 'embedded-server' => \$opt_embedded_server,
  436. 'ps-protocol' => \$opt_ps_protocol,
  437. 'sp-protocol' => \$opt_sp_protocol,
  438. 'view-protocol' => \$opt_view_protocol,
  439. 'cursor-protocol' => \$opt_cursor_protocol,
  440. 'ssl|with-openssl' => \$opt_ssl,
  441. 'skip-ssl' => \$opt_skip_ssl,
  442. 'compress' => \$opt_compress,
  443. 'bench' => \$opt_bench,
  444. 'small-bench' => \$opt_small_bench,
  445. 'with-ndbcluster|ndb' => \$opt_with_ndbcluster,
  446. 'vs-config' => \$opt_vs_config,
  447. # Control what test suites or cases to run
  448. 'force' => \$opt_force,
  449. 'with-ndbcluster-only' => \$opt_with_ndbcluster_only,
  450. 'skip-ndbcluster|skip-ndb' => \$opt_skip_ndbcluster,
  451. 'skip-ndbcluster-slave|skip-ndb-slave'
  452. => \$opt_skip_ndbcluster_slave,
  453. 'ndb-extra-test' => \$opt_ndb_extra_test,
  454. 'skip-master-binlog' => \$opt_skip_master_binlog,
  455. 'skip-slave-binlog' => \$opt_skip_slave_binlog,
  456. 'do-test=s' => \$opt_do_test,
  457. 'start-from=s' => \$opt_start_from,
  458. 'suite=s' => \$opt_suite,
  459. 'skip-rpl' => \$opt_skip_rpl,
  460. 'skip-im' => \$opt_skip_im,
  461. 'skip-test=s' => \$opt_skip_test,
  462. 'big-test' => \$opt_big_test,
  463. # Specify ports
  464. 'master_port=i' => \$opt_master_myport,
  465. 'slave_port=i' => \$opt_slave_myport,
  466. 'ndbcluster-port|ndbcluster_port=i' => \$opt_ndbcluster_port,
  467. 'ndbcluster-port-slave=i' => \$opt_ndbcluster_port_slave,
  468. 'im-port=i' => \$im_port, # Instance Manager port.
  469. 'im-mysqld1-port=i' => \$im_mysqld1_port, # Port of mysqld, controlled by IM
  470. 'im-mysqld2-port=i' => \$im_mysqld2_port, # Port of mysqld, controlled by IM
  471. 'mtr-build-thread=i' => \$opt_mtr_build_thread,
  472. # Test case authoring
  473. 'record' => \$opt_record,
  474. 'check-testcases' => \$opt_check_testcases,
  475. 'mark-progress' => \$opt_mark_progress,
  476. # Extra options used when starting mysqld
  477. 'mysqld=s' => \@opt_extra_mysqld_opt,
  478. # Run test on running server
  479. 'extern' => \$opt_extern,
  480. 'ndb-connectstring=s' => \$opt_ndbconnectstring,
  481. 'ndb-connectstring-slave=s' => \$opt_ndbconnectstring_slave,
  482. # Debugging
  483. 'gdb' => \$opt_gdb,
  484. 'client-gdb' => \$opt_client_gdb,
  485. 'manual-gdb' => \$opt_manual_gdb,
  486. 'manual-debug' => \$opt_manual_debug,
  487. 'ddd' => \$opt_ddd,
  488. 'client-ddd' => \$opt_client_ddd,
  489. 'manual-ddd' => \$opt_manual_ddd,
  490. 'debugger=s' => \$opt_debugger,
  491. 'client-debugger=s' => \$opt_client_debugger,
  492. 'strace-client' => \$opt_strace_client,
  493. 'master-binary=s' => \$exe_master_mysqld,
  494. 'slave-binary=s' => \$exe_slave_mysqld,
  495. 'max-save-core=i' => \$opt_max_save_core,
  496. # Coverage, profiling etc
  497. 'gcov' => \$opt_gcov,
  498. 'gprof' => \$opt_gprof,
  499. 'valgrind|valgrind-all' => \$opt_valgrind,
  500. 'valgrind-mysqltest' => \$opt_valgrind_mysqltest,
  501. 'valgrind-mysqld' => \$opt_valgrind_mysqld,
  502. 'valgrind-options=s' => sub {
  503. my ($opt, $value)= @_;
  504. # Deprecated option unless it's what we know pushbuild uses
  505. if ($value eq "--gen-suppressions=all --show-reachable=yes") {
  506. push(@valgrind_args, $_) for (split(' ', $value));
  507. return;
  508. }
  509. die("--valgrind-options=s is deprecated. Use ",
  510. "--valgrind-option=s, to be specified several",
  511. " times if necessary");
  512. },
  513. 'valgrind-option=s' => \@valgrind_args,
  514. 'valgrind-path=s' => \$opt_valgrind_path,
  515. 'callgrind' => \$opt_callgrind,
  516. # Stress testing
  517. 'stress' => \$opt_stress,
  518. 'stress-suite=s' => \$opt_stress_suite,
  519. 'stress-threads=i' => \$opt_stress_threads,
  520. 'stress-test-file=s' => \$opt_stress_test_file,
  521. 'stress-init-file=s' => \$opt_stress_init_file,
  522. 'stress-mode=s' => \$opt_stress_mode,
  523. 'stress-loop-count=i' => \$opt_stress_loop_count,
  524. 'stress-test-count=i' => \$opt_stress_test_count,
  525. 'stress-test-duration=i' => \$opt_stress_test_duration,
  526. # Directories
  527. 'tmpdir=s' => \$opt_tmpdir,
  528. 'vardir=s' => \$opt_vardir,
  529. 'benchdir=s' => \$glob_mysql_bench_dir,
  530. 'mem' => \$opt_mem,
  531. 'client-bindir=s' => \$path_client_bindir,
  532. 'client-libdir=s' => \$path_client_libdir,
  533. # Misc
  534. 'report-features' => \$opt_report_features,
  535. 'comment=s' => \$opt_comment,
  536. 'debug' => \$opt_debug,
  537. 'fast' => \$opt_fast,
  538. 'reorder' => \$opt_reorder,
  539. 'enable-disabled' => \$opt_enable_disabled,
  540. 'script-debug' => \$opt_script_debug,
  541. 'verbose' => \$opt_verbose,
  542. 'sleep=i' => \$opt_sleep,
  543. 'socket=s' => \$opt_socket,
  544. 'start-dirty' => \$opt_start_dirty,
  545. 'start-and-exit' => \$opt_start_and_exit,
  546. 'timer!' => \$opt_timer,
  547. 'user=s' => \$opt_user,
  548. 'testcase-timeout=i' => \$opt_testcase_timeout,
  549. 'suite-timeout=i' => \$opt_suite_timeout,
  550. 'warnings|log-warnings' => \$opt_warnings,
  551. # Options which are no longer used
  552. (map { $_ => \&warn_about_removed_option } @removed_options),
  553. 'help|h' => \$opt_usage,
  554. ) or usage("Can't read options");
  555. usage("") if $opt_usage;
  556. $glob_scriptname= basename($0);
  557. if ($opt_mtr_build_thread != 0)
  558. {
  559. set_mtr_build_thread_ports($opt_mtr_build_thread)
  560. }
  561. elsif ($ENV{'MTR_BUILD_THREAD'})
  562. {
  563. $opt_mtr_build_thread= $ENV{'MTR_BUILD_THREAD'};
  564. }
  565. # We require that we are in the "mysql-test" directory
  566. # to run mysql-test-run
  567. if (! -f $glob_scriptname)
  568. {
  569. mtr_error("Can't find the location for the mysql-test-run script\n" .
  570. "Go to to the mysql-test directory and execute the script " .
  571. "as follows:\n./$glob_scriptname");
  572. }
  573. if ( -d "../sql" )
  574. {
  575. $source_dist= 1;
  576. }
  577. # Find the absolute path to the test directory
  578. $glob_mysql_test_dir= cwd();
  579. if ( $glob_cygwin_perl )
  580. {
  581. # Windows programs like 'mysqld' needs Windows paths
  582. $glob_mysql_test_dir= `cygpath -m "$glob_mysql_test_dir"`;
  583. chomp($glob_mysql_test_dir);
  584. }
  585. # In most cases, the base directory we find everything relative to,
  586. # is the parent directory of the "mysql-test" directory. For source
  587. # distributions, TAR binary distributions and some other packages.
  588. $glob_basedir= dirname($glob_mysql_test_dir);
  589. # In the RPM case, binaries and libraries are installed in the
  590. # default system locations, instead of having our own private base
  591. # directory. And we install "/usr/share/mysql-test". Moving up one
  592. # more directory relative to "mysql-test" gives us a usable base
  593. # directory for RPM installs.
  594. if ( ! $source_dist and ! -d "$glob_basedir/bin" )
  595. {
  596. $glob_basedir= dirname($glob_basedir);
  597. }
  598. # Expect mysql-bench to be located adjacent to the source tree, by default
  599. $glob_mysql_bench_dir= "$glob_basedir/../mysql-bench"
  600. unless defined $glob_mysql_bench_dir;
  601. $glob_mysql_bench_dir= undef
  602. unless -d $glob_mysql_bench_dir;
  603. $path_my_basedir=
  604. $source_dist ? $glob_mysql_test_dir : $glob_basedir;
  605. $glob_timers= mtr_init_timers();
  606. #
  607. # Find the mysqld executable to be able to find the mysqld version
  608. # number as early as possible
  609. #
  610. # Look for the client binaries directory
  611. if ($path_client_bindir)
  612. {
  613. # --client-bindir=path set on command line, check that the path exists
  614. $path_client_bindir= mtr_path_exists($path_client_bindir);
  615. }
  616. else
  617. {
  618. $path_client_bindir= mtr_path_exists("$glob_basedir/client_release",
  619. "$glob_basedir/client_debug",
  620. vs_config_dirs('client', ''),
  621. "$glob_basedir/client",
  622. "$glob_basedir/bin");
  623. }
  624. if (!$opt_extern)
  625. {
  626. $exe_mysqld= mtr_exe_exists (vs_config_dirs('sql', 'mysqld'),
  627. vs_config_dirs('sql', 'mysqld-debug'),
  628. "$glob_basedir/sql/mysqld",
  629. "$path_client_bindir/mysqld-max-nt",
  630. "$path_client_bindir/mysqld-max",
  631. "$path_client_bindir/mysqld-nt",
  632. "$path_client_bindir/mysqld",
  633. "$path_client_bindir/mysqld-debug",
  634. "$path_client_bindir/mysqld-max",
  635. "$glob_basedir/libexec/mysqld",
  636. "$glob_basedir/bin/mysqld",
  637. "$glob_basedir/sbin/mysqld");
  638. # Use the mysqld found above to find out what features are available
  639. collect_mysqld_features();
  640. }
  641. else
  642. {
  643. $mysqld_variables{'port'}= 3306;
  644. $mysqld_variables{'master-port'}= 3306;
  645. }
  646. if ( $opt_comment )
  647. {
  648. print "\n";
  649. print '#' x 78, "\n";
  650. print "# $opt_comment\n";
  651. print '#' x 78, "\n\n";
  652. }
  653. foreach my $arg ( @ARGV )
  654. {
  655. if ( $arg =~ /^--skip-/ )
  656. {
  657. push(@opt_extra_mysqld_opt, $arg);
  658. }
  659. elsif ( $arg =~ /^--$/ )
  660. {
  661. # It is an effect of setting 'pass_through' in option processing
  662. # that the lone '--' separating options from arguments survives,
  663. # simply ignore it.
  664. }
  665. elsif ( $arg =~ /^-/ )
  666. {
  667. usage("Invalid option \"$arg\"");
  668. }
  669. else
  670. {
  671. push(@opt_cases, $arg);
  672. }
  673. }
  674. # --------------------------------------------------------------------------
  675. # Find out type of logging that are being used
  676. # --------------------------------------------------------------------------
  677. # NOTE if the default binlog format is changed, this has to be changed
  678. $used_binlog_format= "stmt";
  679. if (!$opt_extern && $mysql_version_id >= 50100 )
  680. {
  681. $used_binlog_format= "mixed"; # Default value for binlog format
  682. foreach my $arg ( @opt_extra_mysqld_opt )
  683. {
  684. if ( $arg =~ /binlog-format=(\S+)/ )
  685. {
  686. $used_binlog_format= $1;
  687. }
  688. }
  689. mtr_report("Using binlog format '$used_binlog_format'");
  690. }
  691. # --------------------------------------------------------------------------
  692. # Find out default storage engine being used(if any)
  693. # --------------------------------------------------------------------------
  694. if ( $opt_with_ndbcluster )
  695. {
  696. # --ndb or --with-ndbcluster turns on --default-storage-engine=ndbcluster
  697. push(@opt_extra_mysqld_opt, "--default-storage-engine=ndbcluster");
  698. }
  699. foreach my $arg ( @opt_extra_mysqld_opt )
  700. {
  701. if ( $arg =~ /default-storage-engine=(\S+)/ )
  702. {
  703. $used_default_engine= $1;
  704. }
  705. }
  706. mtr_report("Using default engine '$used_default_engine'")
  707. if defined $used_default_engine;
  708. # --------------------------------------------------------------------------
  709. # Check if we should speed up tests by trying to run on tmpfs
  710. # --------------------------------------------------------------------------
  711. if ( defined $opt_mem )
  712. {
  713. mtr_error("Can't use --mem and --vardir at the same time ")
  714. if $opt_vardir;
  715. mtr_error("Can't use --mem and --tmpdir at the same time ")
  716. if $opt_tmpdir;
  717. # Search through list of locations that are known
  718. # to be "fast disks" to list to find a suitable location
  719. # Use --mem=<dir> as first location to look.
  720. my @tmpfs_locations= ($opt_mem, "/dev/shm", "/tmp");
  721. foreach my $fs (@tmpfs_locations)
  722. {
  723. if ( -d $fs )
  724. {
  725. mtr_report("Using tmpfs in $fs");
  726. $opt_mem= "$fs/var";
  727. $opt_mem .= $opt_mtr_build_thread if $opt_mtr_build_thread;
  728. last;
  729. }
  730. }
  731. }
  732. # --------------------------------------------------------------------------
  733. # Set the "var/" directory, as it is the base for everything else
  734. # --------------------------------------------------------------------------
  735. $default_vardir= "$glob_mysql_test_dir/var";
  736. if ( ! $opt_vardir )
  737. {
  738. $opt_vardir= $default_vardir;
  739. }
  740. elsif ( $mysql_version_id < 50000 and
  741. $opt_vardir ne $default_vardir)
  742. {
  743. # Version 4.1 and --vardir was specified
  744. # Only supported as a symlink from var/
  745. # by setting up $opt_mem that symlink will be created
  746. if ( ! $glob_win32 )
  747. {
  748. # Only platforms that have native symlinks can use the vardir trick
  749. $opt_mem= $opt_vardir;
  750. mtr_report("Using 4.1 vardir trick");
  751. }
  752. $opt_vardir= $default_vardir;
  753. }
  754. $path_vardir_trace= $opt_vardir;
  755. # Chop off any "c:", DBUG likes a unix path ex: c:/src/... => /src/...
  756. $path_vardir_trace=~ s/^\w://;
  757. # We make the path absolute, as the server will do a chdir() before usage
  758. unless ( $opt_vardir =~ m,^/, or
  759. ($glob_win32 and $opt_vardir =~ m,^[a-z]:/,i) )
  760. {
  761. # Make absolute path, relative test dir
  762. $opt_vardir= "$glob_mysql_test_dir/$opt_vardir";
  763. }
  764. # --------------------------------------------------------------------------
  765. # Set tmpdir
  766. # --------------------------------------------------------------------------
  767. $opt_tmpdir= "$opt_vardir/tmp" unless $opt_tmpdir;
  768. $opt_tmpdir =~ s,/+$,,; # Remove ending slash if any
  769. # --------------------------------------------------------------------------
  770. # Check im suport
  771. # --------------------------------------------------------------------------
  772. if ($opt_extern)
  773. {
  774. mtr_report("Disable instance manager when running with extern mysqld");
  775. $opt_skip_im= 1;
  776. }
  777. elsif ( $mysql_version_id < 50000 )
  778. {
  779. # Instance manager is not supported until 5.0
  780. $opt_skip_im= 1;
  781. }
  782. elsif ( $glob_win32 )
  783. {
  784. mtr_report("Disable Instance manager - testing not supported on Windows");
  785. $opt_skip_im= 1;
  786. }
  787. # --------------------------------------------------------------------------
  788. # Record flag
  789. # --------------------------------------------------------------------------
  790. if ( $opt_record and ! @opt_cases )
  791. {
  792. mtr_error("Will not run in record mode without a specific test case");
  793. }
  794. # --------------------------------------------------------------------------
  795. # Embedded server flag
  796. # --------------------------------------------------------------------------
  797. if ( $opt_embedded_server )
  798. {
  799. $glob_use_embedded_server= 1;
  800. push(@glob_test_mode, "embedded");
  801. $opt_skip_rpl= 1; # We never run replication with embedded
  802. $opt_skip_ndbcluster= 1; # Turn off use of NDB cluster
  803. $opt_skip_ssl= 1; # Turn off use of SSL
  804. # Turn off use of bin log
  805. push(@opt_extra_mysqld_opt, "--skip-log-bin");
  806. if ( $opt_extern )
  807. {
  808. mtr_error("Can't use --extern with --embedded-server");
  809. }
  810. }
  811. # --------------------------------------------------------------------------
  812. # ps protcol flag
  813. # --------------------------------------------------------------------------
  814. if ( $opt_ps_protocol )
  815. {
  816. push(@glob_test_mode, "ps-protocol");
  817. }
  818. # --------------------------------------------------------------------------
  819. # Ndb cluster flags
  820. # --------------------------------------------------------------------------
  821. if ( $opt_ndbconnectstring )
  822. {
  823. $glob_use_running_ndbcluster= 1;
  824. mtr_error("Can't specify --ndb-connectstring and --skip-ndbcluster")
  825. if $opt_skip_ndbcluster;
  826. mtr_error("Can't specify --ndb-connectstring and --ndbcluster-port")
  827. if $opt_ndbcluster_port;
  828. }
  829. else
  830. {
  831. # Set default connect string
  832. $opt_ndbconnectstring= "host=localhost:$opt_ndbcluster_port";
  833. }
  834. if ( $opt_ndbconnectstring_slave )
  835. {
  836. $glob_use_running_ndbcluster_slave= 1;
  837. mtr_error("Can't specify ndb-connectstring_slave and " .
  838. "--skip-ndbcluster-slave")
  839. if $opt_skip_ndbcluster;
  840. mtr_error("Can't specify --ndb-connectstring-slave and " .
  841. "--ndbcluster-port-slave")
  842. if $opt_ndbcluster_port_slave;
  843. }
  844. else
  845. {
  846. # Set default connect string
  847. $opt_ndbconnectstring_slave= "host=localhost:$opt_ndbcluster_port_slave";
  848. }
  849. # --------------------------------------------------------------------------
  850. # Bench flags
  851. # --------------------------------------------------------------------------
  852. if ( $opt_small_bench )
  853. {
  854. $opt_bench= 1;
  855. }
  856. # --------------------------------------------------------------------------
  857. # Big test flags
  858. # --------------------------------------------------------------------------
  859. if ( $opt_big_test )
  860. {
  861. $ENV{'BIG_TEST'}= 1;
  862. }
  863. # --------------------------------------------------------------------------
  864. # Gcov flag
  865. # --------------------------------------------------------------------------
  866. if ( $opt_gcov and ! $source_dist )
  867. {
  868. mtr_error("Coverage test needs the source - please use source dist");
  869. }
  870. # --------------------------------------------------------------------------
  871. # Check debug related options
  872. # --------------------------------------------------------------------------
  873. if ( $opt_gdb || $opt_client_gdb || $opt_ddd || $opt_client_ddd ||
  874. $opt_manual_gdb || $opt_manual_ddd || $opt_manual_debug ||
  875. $opt_debugger || $opt_client_debugger )
  876. {
  877. # Indicate that we are using debugger
  878. $glob_debugger= 1;
  879. if ( $opt_extern )
  880. {
  881. mtr_error("Can't use --extern when using debugger");
  882. }
  883. }
  884. # --------------------------------------------------------------------------
  885. # Check if special exe was selected for master or slave
  886. # --------------------------------------------------------------------------
  887. $exe_master_mysqld= $exe_master_mysqld || $exe_mysqld;
  888. $exe_slave_mysqld= $exe_slave_mysqld || $exe_mysqld;
  889. # --------------------------------------------------------------------------
  890. # Check valgrind arguments
  891. # --------------------------------------------------------------------------
  892. if ( $opt_valgrind or $opt_valgrind_path or @valgrind_args)
  893. {
  894. mtr_report("Turning on valgrind for all executables");
  895. $opt_valgrind= 1;
  896. $opt_valgrind_mysqld= 1;
  897. $opt_valgrind_mysqltest= 1;
  898. }
  899. elsif ( $opt_valgrind_mysqld )
  900. {
  901. mtr_report("Turning on valgrind for mysqld(s) only");
  902. $opt_valgrind= 1;
  903. }
  904. elsif ( $opt_valgrind_mysqltest )
  905. {
  906. mtr_report("Turning on valgrind for mysqltest and mysql_client_test only");
  907. $opt_valgrind= 1;
  908. }
  909. if ( $opt_callgrind )
  910. {
  911. mtr_report("Turning on valgrind with callgrind for mysqld(s)");
  912. $opt_valgrind= 1;
  913. $opt_valgrind_mysqld= 1;
  914. # Set special valgrind options unless options passed on command line
  915. push(@valgrind_args, "--trace-children=yes")
  916. unless @valgrind_args;
  917. }
  918. if ( $opt_valgrind )
  919. {
  920. # Set valgrind_options to default unless already defined
  921. push(@valgrind_args, @default_valgrind_args)
  922. unless @valgrind_args;
  923. mtr_report("Running valgrind with options \"",
  924. join(" ", @valgrind_args), "\"");
  925. }
  926. if ( ! $opt_testcase_timeout )
  927. {
  928. $opt_testcase_timeout= $default_testcase_timeout;
  929. $opt_testcase_timeout*= 10 if $opt_valgrind;
  930. }
  931. if ( ! $opt_suite_timeout )
  932. {
  933. $opt_suite_timeout= $default_suite_timeout;
  934. $opt_suite_timeout*= 6 if $opt_valgrind;
  935. }
  936. if ( ! $opt_user )
  937. {
  938. if ( $opt_extern )
  939. {
  940. $opt_user= "test";
  941. }
  942. else
  943. {
  944. $opt_user= "root"; # We want to do FLUSH xxx commands
  945. }
  946. }
  947. # On QNX, /tmp/dir/master.sock and /tmp/dir//master.sock seem to be
  948. # considered different, so avoid the extra slash (/) in the socket
  949. # paths.
  950. my $sockdir = $opt_tmpdir;
  951. $sockdir =~ s|/+$||;
  952. # On some operating systems, there is a limit to the length of a
  953. # UNIX domain socket's path far below PATH_MAX, so try to avoid long
  954. # socket path names.
  955. $sockdir = tempdir(CLEANUP => 0) if ( length($sockdir) >= 70 );
  956. $master->[0]=
  957. {
  958. pid => 0,
  959. type => "master",
  960. idx => 0,
  961. path_myddir => "$opt_vardir/master-data",
  962. path_myerr => "$opt_vardir/log/master.err",
  963. path_pid => "$opt_vardir/run/master.pid",
  964. path_sock => "$sockdir/master.sock",
  965. port => $opt_master_myport,
  966. start_timeout => 400, # enough time create innodb tables
  967. cluster => 0, # index in clusters list
  968. start_opts => [],
  969. };
  970. $master->[1]=
  971. {
  972. pid => 0,
  973. type => "master",
  974. idx => 1,
  975. path_myddir => "$opt_vardir/master1-data",
  976. path_myerr => "$opt_vardir/log/master1.err",
  977. path_pid => "$opt_vardir/run/master1.pid",
  978. path_sock => "$sockdir/master1.sock",
  979. port => $opt_master_myport + 1,
  980. start_timeout => 400, # enough time create innodb tables
  981. cluster => 0, # index in clusters list
  982. start_opts => [],
  983. };
  984. $slave->[0]=
  985. {
  986. pid => 0,
  987. type => "slave",
  988. idx => 0,
  989. path_myddir => "$opt_vardir/slave-data",
  990. path_myerr => "$opt_vardir/log/slave.err",
  991. path_pid => "$opt_vardir/run/slave.pid",
  992. path_sock => "$sockdir/slave.sock",
  993. port => $opt_slave_myport,
  994. start_timeout => 400,
  995. cluster => 1, # index in clusters list
  996. start_opts => [],
  997. };
  998. $slave->[1]=
  999. {
  1000. pid => 0,
  1001. type => "slave",
  1002. idx => 1,
  1003. path_myddir => "$opt_vardir/slave1-data",
  1004. path_myerr => "$opt_vardir/log/slave1.err",
  1005. path_pid => "$opt_vardir/run/slave1.pid",
  1006. path_sock => "$sockdir/slave1.sock",
  1007. port => $opt_slave_myport + 1,
  1008. start_timeout => 300,
  1009. cluster => -1, # index in clusters list
  1010. start_opts => [],
  1011. };
  1012. $slave->[2]=
  1013. {
  1014. pid => 0,
  1015. type => "slave",
  1016. idx => 2,
  1017. path_myddir => "$opt_vardir/slave2-data",
  1018. path_myerr => "$opt_vardir/log/slave2.err",
  1019. path_pid => "$opt_vardir/run/slave2.pid",
  1020. path_sock => "$sockdir/slave2.sock",
  1021. port => $opt_slave_myport + 2,
  1022. start_timeout => 300,
  1023. cluster => -1, # index in clusters list
  1024. start_opts => [],
  1025. };
  1026. $instance_manager=
  1027. {
  1028. path_err => "$opt_vardir/log/im.err",
  1029. path_log => "$opt_vardir/log/im.log",
  1030. path_pid => "$opt_vardir/run/im.pid",
  1031. path_angel_pid => "$opt_vardir/run/im.angel.pid",
  1032. path_sock => "$sockdir/im.sock",
  1033. port => $im_port,
  1034. start_timeout => $master->[0]->{'start_timeout'},
  1035. admin_login => 'im_admin',
  1036. admin_password => 'im_admin_secret',
  1037. admin_sha1 => '*598D51AD2DFF7792045D6DF3DDF9AA1AF737B295',
  1038. password_file => "$opt_vardir/im.passwd",
  1039. defaults_file => "$opt_vardir/im.cnf",
  1040. };
  1041. $instance_manager->{'instances'}->[0]=
  1042. {
  1043. server_id => 1,
  1044. port => $im_mysqld1_port,
  1045. path_datadir => "$opt_vardir/im_mysqld_1.data",
  1046. path_sock => "$sockdir/mysqld_1.sock",
  1047. path_pid => "$opt_vardir/run/mysqld_1.pid",
  1048. start_timeout => 400, # enough time create innodb tables
  1049. old_log_format => 1
  1050. };
  1051. $instance_manager->{'instances'}->[1]=
  1052. {
  1053. server_id => 2,
  1054. port => $im_mysqld2_port,
  1055. path_datadir => "$opt_vardir/im_mysqld_2.data",
  1056. path_sock => "$sockdir/mysqld_2.sock",
  1057. path_pid => "$opt_vardir/run/mysqld_2.pid",
  1058. nonguarded => 1,
  1059. start_timeout => 400, # enough time create innodb tables
  1060. old_log_format => 1
  1061. };
  1062. my $data_dir= "$opt_vardir/ndbcluster-$opt_ndbcluster_port";
  1063. $clusters->[0]=
  1064. {
  1065. name => "Master",
  1066. nodes => 2,
  1067. port => "$opt_ndbcluster_port",
  1068. data_dir => "$data_dir",
  1069. connect_string => "$opt_ndbconnectstring",
  1070. path_pid => "$data_dir/ndb_3.pid", # Nodes + 1
  1071. pid => 0, # pid of ndb_mgmd
  1072. installed_ok => 0,
  1073. };
  1074. $data_dir= "$opt_vardir/ndbcluster-$opt_ndbcluster_port_slave";
  1075. $clusters->[1]=
  1076. {
  1077. name => "Slave",
  1078. nodes => 1,
  1079. port => "$opt_ndbcluster_port_slave",
  1080. data_dir => "$data_dir",
  1081. connect_string => "$opt_ndbconnectstring_slave",
  1082. path_pid => "$data_dir/ndb_2.pid", # Nodes + 1
  1083. pid => 0, # pid of ndb_mgmd
  1084. installed_ok => 0,
  1085. };
  1086. # Init pids of ndbd's
  1087. foreach my $cluster ( @{$clusters} )
  1088. {
  1089. for ( my $idx= 0; $idx < $cluster->{'nodes'}; $idx++ )
  1090. {
  1091. my $nodeid= $idx+1;
  1092. $cluster->{'ndbds'}->[$idx]=
  1093. {
  1094. pid => 0,
  1095. nodeid => $nodeid,
  1096. path_pid => "$cluster->{'data_dir'}/ndb_${nodeid}.pid",
  1097. path_fs => "$cluster->{'data_dir'}/ndb_${nodeid}_fs",
  1098. };
  1099. }
  1100. }
  1101. if ( $opt_extern )
  1102. {
  1103. # Turn off features not supported when running with extern server
  1104. $opt_skip_rpl= 1;
  1105. $opt_skip_ndbcluster= 1;
  1106. # Setup master->[0] with the settings for the extern server
  1107. $master->[0]->{'path_sock'}= $opt_socket ? $opt_socket : "/tmp/mysql.sock";
  1108. mtr_report("Using extern server at '$master->[0]->{path_sock}'");
  1109. }
  1110. else
  1111. {
  1112. mtr_error("--socket can only be used in combination with --extern")
  1113. if $opt_socket;
  1114. }
  1115. $path_timefile= "$opt_vardir/log/mysqltest-time";
  1116. $path_mysqltest_log= "$opt_vardir/log/mysqltest.log";
  1117. $path_current_test_log= "$opt_vardir/log/current_test";
  1118. $path_ndb_testrun_log= "$opt_vardir/log/ndb_testrun.log";
  1119. $path_snapshot= "$opt_tmpdir/snapshot_$opt_master_myport/";
  1120. if ( $opt_valgrind and $opt_debug )
  1121. {
  1122. # When both --valgrind and --debug is selected, send
  1123. # all output to the trace file, making it possible to
  1124. # see the exact location where valgrind complains
  1125. foreach my $mysqld (@{$master}, @{$slave})
  1126. {
  1127. my $sidx= $mysqld->{idx} ? "$mysqld->{idx}" : "";
  1128. $mysqld->{path_myerr}=
  1129. "$opt_vardir/log/" . $mysqld->{type} . "$sidx.trace";
  1130. }
  1131. }
  1132. }
  1133. #
  1134. # To make it easier for different devs to work on the same host,
  1135. # an environment variable can be used to control all ports. A small
  1136. # number is to be used, 0 - 16 or similar.
  1137. #
  1138. # Note the MASTER_MYPORT has to be set the same in all 4.x and 5.x
  1139. # versions of this script, else a 4.0 test run might conflict with a
  1140. # 5.1 test run, even if different MTR_BUILD_THREAD is used. This means
  1141. # all port numbers might not be used in this version of the script.
  1142. #
  1143. # Also note the limitation of ports we are allowed to hand out. This
  1144. # differs between operating systems and configuration, see
  1145. # http://www.ncftp.com/ncftpd/doc/misc/ephemeral_ports.html
  1146. # But a fairly safe range seems to be 5001 - 32767
  1147. #
  1148. sub set_mtr_build_thread_ports($) {
  1149. my $mtr_build_thread= shift;
  1150. if ( lc($mtr_build_thread) eq 'auto' ) {
  1151. print "Requesting build thread... ";
  1152. $ENV{'MTR_BUILD_THREAD'} = $mtr_build_thread = mtr_require_unique_id_and_wait("/tmp/mysql-test-ports", 200, 299);
  1153. print "got ".$mtr_build_thread."\n";
  1154. }
  1155. # Up to two masters, up to three slaves
  1156. # A magic value in command_line_setup depends on these equations.
  1157. $opt_master_myport= $mtr_build_thread * 10 + 10000; # and 1
  1158. $opt_slave_myport= $opt_master_myport + 2; # and 3 4
  1159. $opt_ndbcluster_port= $opt_master_myport + 5;
  1160. $opt_ndbcluster_port_slave= $opt_master_myport + 6;
  1161. $im_port= $opt_master_myport + 7;
  1162. $im_mysqld1_port= $opt_master_myport + 8;
  1163. $im_mysqld2_port= $opt_master_myport + 9;
  1164. if ( $opt_master_myport < 5001 or $opt_master_myport + 10 >= 32767 )
  1165. {
  1166. mtr_error("MTR_BUILD_THREAD number results in a port",
  1167. "outside 5001 - 32767",
  1168. "($opt_master_myport - $opt_master_myport + 10)");
  1169. }
  1170. }
  1171. sub datadir_list_setup () {
  1172. # Make a list of all data_dirs
  1173. for (my $idx= 0; $idx < $max_master_num; $idx++)
  1174. {
  1175. push(@data_dir_lst, $master->[$idx]->{'path_myddir'});
  1176. }
  1177. for (my $idx= 0; $idx < $max_slave_num; $idx++)
  1178. {
  1179. push(@data_dir_lst, $slave->[$idx]->{'path_myddir'});
  1180. }
  1181. unless ($opt_skip_im)
  1182. {
  1183. foreach my $instance (@{$instance_manager->{'instances'}})
  1184. {
  1185. push(@data_dir_lst, $instance->{'path_datadir'});
  1186. }
  1187. }
  1188. }
  1189. ##############################################################################
  1190. #
  1191. # Set paths to various executable programs
  1192. #
  1193. ##############################################################################
  1194. sub collect_mysqld_features () {
  1195. my $found_variable_list_start= 0;
  1196. my $tmpdir;
  1197. if ( $opt_tmpdir ) {
  1198. # Use the requested tmpdir
  1199. mkpath($opt_tmpdir) if (! -d $opt_tmpdir);
  1200. $tmpdir= $opt_tmpdir;
  1201. }
  1202. else {
  1203. $tmpdir= tempdir(CLEANUP => 0); # Directory removed by this function
  1204. }
  1205. #
  1206. # Execute "mysqld --no-defaults --help --verbose" to get a
  1207. # list of all features and settings
  1208. #
  1209. my $list= `$exe_mysqld --no-defaults --datadir=$tmpdir --verbose --help`;
  1210. foreach my $line (split('\n', $list))
  1211. {
  1212. # First look for version
  1213. if ( !$mysql_version_id )
  1214. {
  1215. # Look for version
  1216. my $exe_name= basename($exe_mysqld);
  1217. mtr_verbose("exe_name: $exe_name");
  1218. if ( $line =~ /^\S*$exe_name\s\sVer\s([0-9]*)\.([0-9]*)\.([0-9]*)/ )
  1219. {
  1220. #print "Major: $1 Minor: $2 Build: $3\n";
  1221. $mysql_version_id= $1*10000 + $2*100 + $3;
  1222. #print "mysql_version_id: $mysql_version_id\n";
  1223. mtr_report("MySQL Version $1.$2.$3");
  1224. }
  1225. }
  1226. else
  1227. {
  1228. if (!$found_variable_list_start)
  1229. {
  1230. # Look for start of variables list
  1231. if ( $line =~ /[\-]+\s[\-]+/ )
  1232. {
  1233. $found_variable_list_start= 1;
  1234. }
  1235. }
  1236. else
  1237. {
  1238. # Put variables into hash
  1239. if ( $line =~ /^([\S]+)[ \t]+(.*?)\r?$/ )
  1240. {
  1241. # print "$1=\"$2\"\n";
  1242. $mysqld_variables{$1}= $2;
  1243. }
  1244. else
  1245. {
  1246. # The variable list is ended with a blank line
  1247. if ( $line =~ /^[\s]*$/ )
  1248. {
  1249. last;
  1250. }
  1251. else
  1252. {
  1253. # Send out a warning, we should fix the variables that has no
  1254. # space between variable name and it's value
  1255. # or should it be fixed width column parsing? It does not
  1256. # look like that in function my_print_variables in my_getopt.c
  1257. mtr_warning("Could not parse variable list line : $line");
  1258. }
  1259. }
  1260. }
  1261. }
  1262. }
  1263. rmtree($tmpdir) if (!$opt_tmpdir);
  1264. mtr_error("Could not find version of MySQL") unless $mysql_version_id;
  1265. mtr_error("Could not find variabes list") unless $found_variable_list_start;
  1266. }
  1267. sub run_query($$) {
  1268. my ($mysqld, $query)= @_;
  1269. my $args;
  1270. mtr_init_args(\$args);
  1271. mtr_add_arg($args, "--no-defaults");
  1272. mtr_add_arg($args, "--user=%s", $opt_user);
  1273. mtr_add_arg($args, "--port=%d", $mysqld->{'port'});
  1274. mtr_add_arg($args, "--socket=%s", $mysqld->{'path_sock'});
  1275. mtr_add_arg($args, "--silent"); # Tab separated output
  1276. mtr_add_arg($args, "-e '%s'", $query);
  1277. my $cmd= "$exe_mysql " . join(' ', @$args);
  1278. mtr_verbose("cmd: $cmd");
  1279. return `$cmd`;
  1280. }
  1281. sub collect_mysqld_features_from_running_server ()
  1282. {
  1283. my $list= run_query($master->[0], "use mysql; SHOW VARIABLES");
  1284. foreach my $line (split('\n', $list))
  1285. {
  1286. # Put variables into hash
  1287. if ( $line =~ /^([\S]+)[ \t]+(.*?)\r?$/ )
  1288. {
  1289. print "$1=\"$2\"\n";
  1290. $mysqld_variables{$1}= $2;
  1291. }
  1292. }
  1293. }
  1294. sub executable_setup_im () {
  1295. # Look for instance manager binary - mysqlmanager
  1296. $exe_im=
  1297. mtr_exe_maybe_exists(
  1298. "$glob_basedir/server-tools/instance-manager/mysqlmanager",
  1299. "$glob_basedir/libexec/mysqlmanager",
  1300. "$glob_basedir/bin/mysqlmanager",
  1301. "$glob_basedir/sbin/mysqlmanager");
  1302. return ($exe_im eq "");
  1303. }
  1304. sub executable_setup_ndb () {
  1305. # Look for ndb tols and binaries
  1306. my $ndb_path= mtr_file_exists("$glob_basedir/ndb",
  1307. "$glob_basedir/storage/ndb",
  1308. "$glob_basedir/bin");
  1309. $exe_ndbd=
  1310. mtr_exe_maybe_exists("$ndb_path/src/kernel/ndbd",
  1311. "$ndb_path/ndbd");
  1312. $exe_ndb_mgm=
  1313. mtr_exe_maybe_exists("$ndb_path/src/mgmclient/ndb_mgm",
  1314. "$ndb_path/ndb_mgm");
  1315. $exe_ndb_mgmd=
  1316. mtr_exe_maybe_exists("$ndb_path/src/mgmsrv/ndb_mgmd",
  1317. "$ndb_path/ndb_mgmd");
  1318. $exe_ndb_waiter=
  1319. mtr_exe_maybe_exists("$ndb_path/tools/ndb_waiter",
  1320. "$ndb_path/ndb_waiter");
  1321. # May not exist
  1322. $path_ndb_tools_dir= mtr_file_exists("$ndb_path/tools",
  1323. "$ndb_path");
  1324. # May not exist
  1325. $path_ndb_examples_dir=
  1326. mtr_file_exists("$ndb_path/ndbapi-examples",
  1327. "$ndb_path/examples");
  1328. # May not exist
  1329. $exe_ndb_example=
  1330. mtr_file_exists("$path_ndb_examples_dir/ndbapi_simple/ndbapi_simple");
  1331. return ( $exe_ndbd eq "" or
  1332. $exe_ndb_mgm eq "" or
  1333. $exe_ndb_mgmd eq "" or
  1334. $exe_ndb_waiter eq "");
  1335. }
  1336. sub executable_setup () {
  1337. #
  1338. # Check if libtool is available in this distribution/clone
  1339. # we need it when valgrinding or debugging non installed binary
  1340. # Otherwise valgrind will valgrind the libtool wrapper or bash
  1341. # and gdb will not find the real executable to debug
  1342. #
  1343. if ( -x "../libtool")
  1344. {
  1345. $exe_libtool= "../libtool";
  1346. if ($opt_valgrind or $glob_debugger)
  1347. {
  1348. mtr_report("Using \"$exe_libtool\" when running valgrind or debugger");
  1349. }
  1350. }
  1351. # Look for language files and charsetsdir, use same share
  1352. my $path_share= mtr_path_exists("$glob_basedir/share/mysql",
  1353. "$glob_basedir/sql/share",
  1354. "$glob_basedir/share");
  1355. $path_language= mtr_path_exists("$path_share/english");
  1356. $path_charsetsdir= mtr_path_exists("$path_share/charsets");
  1357. # Look for my_print_defaults
  1358. $exe_my_print_defaults=
  1359. mtr_exe_exists(vs_config_dirs('extra', 'my_print_defaults'),
  1360. "$path_client_bindir/my_print_defaults",
  1361. "$glob_basedir/extra/my_print_defaults");
  1362. # Look for perror
  1363. $exe_perror= mtr_exe_exists(vs_config_dirs('extra', 'perror'),
  1364. "$glob_basedir/extra/perror",
  1365. "$path_client_bindir/perror");
  1366. # Look for the client binaries
  1367. $exe_mysqlcheck= mtr_exe_exists("$path_client_bindir/mysqlcheck");
  1368. $exe_mysqldump= mtr_exe_exists("$path_client_bindir/mysqldump");
  1369. $exe_mysqlimport= mtr_exe_exists("$path_client_bindir/mysqlimport");
  1370. $exe_mysqlshow= mtr_exe_exists("$path_client_bindir/mysqlshow");
  1371. $exe_mysqlbinlog= mtr_exe_exists("$path_client_bindir/mysqlbinlog");
  1372. $exe_mysqladmin= mtr_exe_exists("$path_client_bindir/mysqladmin");
  1373. $exe_mysql= mtr_exe_exists("$path_client_bindir/mysql");
  1374. if (!$opt_extern)
  1375. {
  1376. # Look for SQL scripts directory
  1377. if ( mtr_file_exists("$path_share/mysql_system_tables.sql") ne "")
  1378. {
  1379. # The SQL scripts are in path_share
  1380. $path_sql_dir= $path_share;
  1381. }
  1382. else
  1383. {
  1384. $path_sql_dir= mtr_path_exists("$glob_basedir/share",
  1385. "$glob_basedir/scripts");
  1386. }
  1387. if ( $mysql_version_id >= 50100 ) {
  1388. $exe_mysqlslap= mtr_exe_exists("$path_client_bindir/mysqlslap");
  1389. }
  1390. if ( $mysql_version_id >= 50000 and !$glob_use_embedded_server ) {
  1391. $exe_mysql_upgrade= mtr_exe_exists("$path_client_bindir/mysql_upgrade")
  1392. } else {
  1393. $exe_mysql_upgrade= "";
  1394. }
  1395. if ( ! $glob_win32 ) {
  1396. # Look for mysql_fix_system_table script
  1397. $exe_mysql_fix_system_tables=
  1398. mtr_script_exists("$glob_basedir/scripts/mysql_fix_privilege_tables",
  1399. "$path_client_bindir/mysql_fix_privilege_tables");
  1400. }
  1401. # Look for mysql_fix_privilege_tables.sql script
  1402. $file_mysql_fix_privilege_tables=
  1403. mtr_file_exists("$glob_basedir/scripts/mysql_fix_privilege_tables.sql",
  1404. "$glob_basedir/share/mysql_fix_privilege_tables.sql");
  1405. if ( ! $opt_skip_ndbcluster and executable_setup_ndb()) {
  1406. mtr_warning("Could not find all required ndb binaries, " .
  1407. "all ndb tests will fail, use --skip-ndbcluster to " .
  1408. "skip testing it.");
  1409. foreach my $cluster (@{$clusters}) {
  1410. $cluster->{"executable_setup_failed"}= 1;
  1411. }
  1412. }
  1413. if ( ! $opt_skip_im and executable_setup_im()) {
  1414. mtr_warning("Could not find all required instance manager binaries, " .
  1415. "all im tests will fail, use --skip-im to " .
  1416. "continue without instance manager");
  1417. $instance_manager->{"executable_setup_failed"}= 1;
  1418. }
  1419. # Look for the udf_example library
  1420. $lib_udf_example=
  1421. mtr_file_exists(vs_config_dirs('sql', 'udf_example.dll'),
  1422. "$glob_basedir/sql/.libs/udf_example.so",);
  1423. }
  1424. # Look for mysqltest executable
  1425. if ( $glob_use_embedded_server )
  1426. {
  1427. $exe_mysqltest=
  1428. mtr_exe_exists(vs_config_dirs('libmysqld/examples','mysqltest_embedded'),
  1429. "$glob_basedir/libmysqld/examples/mysqltest_embedded",
  1430. "$path_client_bindir/mysqltest_embedded");
  1431. }
  1432. else
  1433. {
  1434. $exe_mysqltest= mtr_exe_exists("$path_client_bindir/mysqltest");
  1435. }
  1436. # Look for mysql_client_test executable which may _not_ exist in
  1437. # some versions, test using it should be skipped
  1438. if ( $glob_use_embedded_server )
  1439. {
  1440. $exe_mysql_client_test=
  1441. mtr_exe_maybe_exists(
  1442. vs_config_dirs('libmysqld/examples', 'mysql_client_test_embedded'),
  1443. "$glob_basedir/libmysqld/examples/mysql_client_test_embedded");
  1444. }
  1445. else
  1446. {
  1447. $exe_mysql_client_test=
  1448. mtr_exe_maybe_exists(vs_config_dirs('tests', 'mysql_client_test'),
  1449. "$glob_basedir/tests/mysql_client_test",
  1450. "$glob_basedir/bin/mysql_client_test");
  1451. }
  1452. # Look for bug25714 executable which may _not_ exist in
  1453. # some versions, test using it should be skipped
  1454. $exe_bug25714=
  1455. mtr_exe_maybe_exists(vs_config_dirs('tests', 'bug25714'),
  1456. "$glob_basedir/tests/bug25714");
  1457. }
  1458. sub generate_cmdline_mysqldump ($) {
  1459. my($mysqld) = @_;
  1460. return
  1461. mtr_native_path($exe_mysqldump) .
  1462. " --no-defaults -uroot " .
  1463. "--port=$mysqld->{'port'} " .
  1464. "--socket=$mysqld->{'path_sock'} --password=";
  1465. }
  1466. ##############################################################################
  1467. #
  1468. # Set environment to be used by childs of this process for
  1469. # things that are constant duting the whole lifetime of mysql-test-run.pl
  1470. #
  1471. ##############################################################################
  1472. sub mysql_client_test_arguments()
  1473. {
  1474. my $exe= $exe_mysql_client_test;
  1475. my $args;
  1476. mtr_init_args(\$args);
  1477. if ( $opt_valgrind_mysqltest )
  1478. {
  1479. valgrind_arguments($args, \$exe);
  1480. }
  1481. mtr_add_arg($args, "--no-defaults");
  1482. mtr_add_arg($args, "--testcase");
  1483. mtr_add_arg($args, "--user=root");
  1484. mtr_add_arg($args, "--port=$master->[0]->{'port'}");
  1485. mtr_add_arg($args, "--socket=$master->[0]->{'path_sock'}");
  1486. if ( $opt_extern || $mysql_version_id >= 50000 )
  1487. {
  1488. mtr_add_arg($args, "--vardir=$opt_vardir")
  1489. }
  1490. if ( $opt_debug )
  1491. {
  1492. mtr_add_arg($args,
  1493. "--debug=d:t:A,$path_vardir_trace/log/mysql_client_test.trace");
  1494. }
  1495. if ( $glob_use_embedded_server )
  1496. {
  1497. mtr_add_arg($args,
  1498. " -A --language=$path_language");
  1499. mtr_add_arg($args,
  1500. " -A --datadir=$slave->[0]->{'path_myddir'}");
  1501. mtr_add_arg($args,
  1502. " -A --character-sets-dir=$path_charsetsdir");
  1503. }
  1504. return join(" ", $exe, @$args);
  1505. }
  1506. sub mysql_upgrade_arguments()
  1507. {
  1508. my $exe= $exe_mysql_upgrade;
  1509. my $args;
  1510. mtr_init_args(\$args);
  1511. # if ( $opt_valgrind_mysql_ugrade )
  1512. # {
  1513. # valgrind_arguments($args, \$exe);
  1514. # }
  1515. mtr_add_arg($args, "--no-defaults");
  1516. mtr_add_arg($args, "--user=root");
  1517. mtr_add_arg($args, "--port=$master->[0]->{'port'}");
  1518. mtr_add_arg($args, "--socket=$master->[0]->{'path_sock'}");
  1519. mtr_add_arg($args, "--datadir=$master->[0]->{'path_myddir'}");
  1520. mtr_add_arg($args, "--basedir=$glob_basedir");
  1521. mtr_add_arg($args, "--tmpdir=$opt_tmpdir");
  1522. if ( $opt_debug )
  1523. {
  1524. mtr_add_arg($args,
  1525. "--debug=d:t:A,$path_vardir_trace/log/mysql_upgrade.trace");
  1526. }
  1527. return join(" ", $exe, @$args);
  1528. }
  1529. # Note that some env is setup in spawn/run, in "mtr_process.pl"
  1530. sub environment_setup () {
  1531. umask(022);
  1532. my @ld_library_paths;
  1533. if ($path_client_libdir)
  1534. {
  1535. # Use the --client-libdir passed on commandline
  1536. push(@ld_library_paths, "$path_client_libdir");
  1537. }
  1538. else
  1539. {
  1540. # Setup LD_LIBRARY_PATH so the libraries from this distro/clone
  1541. # are used in favor of the system installed ones
  1542. if ( $source_dist )
  1543. {
  1544. push(@ld_library_paths, "$glob_basedir/libmysql/.libs/",
  1545. "$glob_basedir/libmysql_r/.libs/",
  1546. "$glob_basedir/zlib.libs/");
  1547. }
  1548. else
  1549. {
  1550. push(@ld_library_paths, "$glob_basedir/lib");
  1551. }
  1552. }
  1553. # --------------------------------------------------------------------------
  1554. # Add the path where libndbclient can be found
  1555. # --------------------------------------------------------------------------
  1556. if ( $glob_ndbcluster_supported )
  1557. {
  1558. push(@ld_library_paths, "$glob_basedir/storage/ndb/src/.libs");
  1559. }
  1560. # --------------------------------------------------------------------------
  1561. # Add the path where mysqld will find udf_example.so
  1562. # --------------------------------------------------------------------------
  1563. if ( $lib_udf_example )
  1564. {
  1565. push(@ld_library_paths, dirname($lib_udf_example));
  1566. }
  1567. # --------------------------------------------------------------------------
  1568. # Valgrind need to be run with debug libraries otherwise it's almost
  1569. # impossible to add correct supressions, that means if "/usr/lib/debug"
  1570. # is available, it should be added to
  1571. # LD_LIBRARY_PATH
  1572. #
  1573. # But pthread is broken in libc6-dbg on Debian <= 3.1 (see Debian
  1574. # bug 399035, http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=399035),
  1575. # so don't change LD_LIBRARY_PATH on that platform.
  1576. # --------------------------------------------------------------------------
  1577. my $debug_libraries_path= "/usr/lib/debug";
  1578. my $deb_version;
  1579. if ( $opt_valgrind and -d $debug_libraries_path and
  1580. (! -e '/etc/debian_version' or
  1581. ($deb_version= mtr_grab_file('/etc/debian_version')) !~ /^[0-9]+\.[0-9]$/ or
  1582. $deb_version > 3.1 ) )
  1583. {
  1584. push(@ld_library_paths, $debug_libraries_path);
  1585. }
  1586. $ENV{'LD_LIBRARY_PATH'}= join(":", @ld_library_paths,
  1587. $ENV{'LD_LIBRARY_PATH'} ?
  1588. split(':', $ENV{'LD_LIBRARY_PATH'}) : ());
  1589. mtr_debug("LD_LIBRARY_PATH: $ENV{'LD_LIBRARY_PATH'}");
  1590. $ENV{'DYLD_LIBRARY_PATH'}= join(":", @ld_library_paths,
  1591. $ENV{'DYLD_LIBRARY_PATH'} ?
  1592. split(':', $ENV{'DYLD_LIBRARY_PATH'}) : ());
  1593. mtr_debug("DYLD_LIBRARY_PATH: $ENV{'DYLD_LIBRARY_PATH'}");
  1594. # The environment variable used for shared libs on AIX
  1595. $ENV{'SHLIB_PATH'}= join(":", @ld_library_paths,
  1596. $ENV{'SHLIB_PATH'} ?
  1597. split(':', $ENV{'SHLIB_PATH'}) : ());
  1598. mtr_debug("SHLIB_PATH: $ENV{'SHLIB_PATH'}");
  1599. # The environment variable used for shared libs on hp-ux
  1600. $ENV{'LIBPATH'}= join(":", @ld_library_paths,
  1601. $ENV{'LIBPATH'} ?
  1602. split(':', $ENV{'LIBPATH'}) : ());
  1603. mtr_debug("LIBPATH: $ENV{'LIBPATH'}");
  1604. # --------------------------------------------------------------------------
  1605. # Also command lines in .opt files may contain env vars
  1606. # --------------------------------------------------------------------------
  1607. $ENV{'CHARSETSDIR'}= $path_charsetsdir;
  1608. $ENV{'UMASK'}= "0660"; # The octal *string*
  1609. $ENV{'UMASK_DIR'}= "0770"; # The octal *string*
  1610. #
  1611. # MySQL tests can produce output in various character sets
  1612. # (especially, ctype_xxx.test). To avoid confusing Perl
  1613. # with output which is incompatible with the current locale
  1614. # settings, we reset the current values of LC_ALL and LC_CTYPE to "C".
  1615. # For details, please see
  1616. # Bug#27636 tests fails if LC_* variables set to *_*.UTF-8
  1617. #
  1618. $ENV{'LC_ALL'}= "C";
  1619. $ENV{'LC_CTYPE'}= "C";
  1620. $ENV{'LC_COLLATE'}= "C";
  1621. $ENV{'USE_RUNNING_SERVER'}= $opt_extern;
  1622. $ENV{'MYSQL_TEST_DIR'}= $glob_mysql_test_dir;
  1623. $ENV{'MYSQLTEST_VARDIR'}= $opt_vardir;
  1624. $ENV{'MYSQL_TMP_DIR'}= $opt_tmpdir;
  1625. $ENV{'MASTER_MYSOCK'}= $master->[0]->{'path_sock'};
  1626. $ENV{'MASTER_MYSOCK1'}= $master->[1]->{'path_sock'};
  1627. $ENV{'MASTER_MYPORT'}= $master->[0]->{'port'};
  1628. $ENV{'MASTER_MYPORT1'}= $master->[1]->{'port'};
  1629. $ENV{'SLAVE_MYSOCK'}= $slave->[0]->{'path_sock'};
  1630. $ENV{'SLAVE_MYPORT'}= $slave->[0]->{'port'};
  1631. $ENV{'SLAVE_MYPORT1'}= $slave->[1]->{'port'};
  1632. $ENV{'SLAVE_MYPORT2'}= $slave->[2]->{'port'};
  1633. $ENV{'MYSQL_TCP_PORT'}= $mysqld_variables{'port'};
  1634. $ENV{'DEFAULT_MASTER_PORT'}= $mysqld_variables{'master-port'};
  1635. $ENV{'IM_PATH_SOCK'}= $instance_manager->{path_sock};
  1636. $ENV{'IM_USERNAME'}= $instance_manager->{admin_login};
  1637. $ENV{'IM_PASSWORD'}= $instance_manager->{admin_password};
  1638. $ENV{MTR_BUILD_THREAD}= $opt_mtr_build_thread;
  1639. $ENV{'EXE_MYSQL'}= $exe_mysql;
  1640. # ----------------------------------------------------
  1641. # Setup env for NDB
  1642. # ----------------------------------------------------
  1643. if ( ! $opt_skip_ndbcluster )
  1644. {
  1645. $ENV{'NDB_MGM'}= $exe_ndb_mgm;
  1646. $ENV{'NDBCLUSTER_PORT'}= $opt_ndbcluster_port;
  1647. $ENV{'NDBCLUSTER_PORT_SLAVE'}= $opt_ndbcluster_port_slave;
  1648. $ENV{'NDB_EXTRA_TEST'}= $opt_ndb_extra_test;
  1649. $ENV{'NDB_BACKUP_DIR'}= $clusters->[0]->{'data_dir'};
  1650. $ENV{'NDB_DATA_DIR'}= $clusters->[0]->{'data_dir'};
  1651. $ENV{'NDB_TOOLS_DIR'}= $path_ndb_tools_dir;
  1652. $ENV{'NDB_TOOLS_OUTPUT'}= $path_ndb_testrun_log;
  1653. $ENV{'NDB_CONNECTSTRING'}= $opt_ndbconnectstring;
  1654. if ( $mysql_version_id >= 50000 )
  1655. {
  1656. $ENV{'NDB_EXAMPLES_DIR'}= $path_ndb_examples_dir;
  1657. $ENV{'MY_NDB_EXAMPLES_BINARY'}= $exe_ndb_example;
  1658. }
  1659. $ENV{'NDB_EXAMPLES_OUTPUT'}= $path_ndb_testrun_log;
  1660. }
  1661. # ----------------------------------------------------
  1662. # Setup env for IM
  1663. # ----------------------------------------------------
  1664. if ( ! $opt_skip_im )
  1665. {
  1666. $ENV{'IM_EXE'}= $exe_im;
  1667. $ENV{'IM_PATH_PID'}= $instance_manager->{path_pid};
  1668. $ENV{'IM_PATH_ANGEL_PID'}= $instance_manager->{path_angel_pid};
  1669. $ENV{'IM_PORT'}= $instance_manager->{port};
  1670. $ENV{'IM_DEFAULTS_PATH'}= $instance_manager->{defaults_file};
  1671. $ENV{'IM_PASSWORD_PATH'}= $instance_manager->{password_file};
  1672. $ENV{'IM_MYSQLD1_SOCK'}=
  1673. $instance_manager->{instances}->[0]->{path_sock};
  1674. $ENV{'IM_MYSQLD1_PORT'}=
  1675. $instance_manager->{instances}->[0]->{port};
  1676. $ENV{'IM_MYSQLD1_PATH_PID'}=
  1677. $instance_manager->{instances}->[0]->{path_pid};
  1678. $ENV{'IM_MYSQLD2_SOCK'}=
  1679. $instance_manager->{instances}->[1]->{path_sock};
  1680. $ENV{'IM_MYSQLD2_PORT'}=
  1681. $instance_manager->{instances}->[1]->{port};
  1682. $ENV{'IM_MYSQLD2_PATH_PID'}=
  1683. $instance_manager->{instances}->[1]->{path_pid};
  1684. }
  1685. # ----------------------------------------------------
  1686. # Setup env so childs can execute mysqlcheck
  1687. # ----------------------------------------------------
  1688. my $cmdline_mysqlcheck=
  1689. mtr_native_path($exe_mysqlcheck) .
  1690. " --no-defaults -uroot " .
  1691. "--port=$master->[0]->{'port'} " .
  1692. "--socket=$master->[0]->{'path_sock'} --password=";
  1693. if ( $opt_debug )
  1694. {
  1695. $cmdline_mysqlcheck .=
  1696. " --debug=d:t:A,$path_vardir_trace/log/mysqlcheck.trace";
  1697. }
  1698. $ENV{'MYSQL_CHECK'}= $cmdline_mysqlcheck;
  1699. # ----------------------------------------------------
  1700. # Setup env to childs can execute myqldump
  1701. # ----------------------------------------------------
  1702. my $cmdline_mysqldump= generate_cmdline_mysqldump($master->[0]);
  1703. my $cmdline_mysqldumpslave= generate_cmdline_mysqldump($slave->[0]);
  1704. if ( $opt_debug )
  1705. {
  1706. $cmdline_mysqldump .=
  1707. " --debug=d:t:A,$path_vardir_trace/log/mysqldump-master.trace";
  1708. $cmdline_mysqldumpslave .=
  1709. " --debug=d:t:A,$path_vardir_trace/log/mysqldump-slave.trace";
  1710. }
  1711. $ENV{'MYSQL_DUMP'}= $cmdline_mysqldump;
  1712. $ENV{'MYSQL_DUMP_SLAVE'}= $cmdline_mysqldumpslave;
  1713. # ----------------------------------------------------
  1714. # Setup env so childs can execute mysqlslap
  1715. # ----------------------------------------------------
  1716. if ( $exe_mysqlslap )
  1717. {
  1718. my $cmdline_mysqlslap=
  1719. mtr_native_path($exe_mysqlslap) .
  1720. " -uroot " .
  1721. "--port=$master->[0]->{'port'} " .
  1722. "--socket=$master->[0]->{'path_sock'} --password= " .
  1723. "--lock-directory=$opt_tmpdir";
  1724. if ( $opt_debug )
  1725. {
  1726. $cmdline_mysqlslap .=
  1727. " --debug=d:t:A,$path_vardir_trace/log/mysqlslap.trace";
  1728. }
  1729. $ENV{'MYSQL_SLAP'}= $cmdline_mysqlslap;
  1730. }
  1731. # ----------------------------------------------------
  1732. # Setup env so childs can execute mysqlimport
  1733. # ----------------------------------------------------
  1734. my $cmdline_mysqlimport=
  1735. mtr_native_path($exe_mysqlimport) .
  1736. " -uroot " .
  1737. "--port=$master->[0]->{'port'} " .
  1738. "--socket=$master->[0]->{'path_sock'} --password=";
  1739. if ( $opt_debug )
  1740. {
  1741. $cmdline_mysqlimport .=
  1742. " --debug=d:t:A,$path_vardir_trace/log/mysqlimport.trace";
  1743. }
  1744. $ENV{'MYSQL_IMPORT'}= $cmdline_mysqlimport;
  1745. # ----------------------------------------------------
  1746. # Setup env so childs can execute mysqlshow
  1747. # ----------------------------------------------------
  1748. my $cmdline_mysqlshow=
  1749. mtr_native_path($exe_mysqlshow) .
  1750. " -uroot " .
  1751. "--port=$master->[0]->{'port'} " .
  1752. "--socket=$master->[0]->{'path_sock'} --password=";
  1753. if ( $opt_debug )
  1754. {
  1755. $cmdline_mysqlshow .=
  1756. " --debug=d:t:A,$path_vardir_trace/log/mysqlshow.trace";
  1757. }
  1758. $ENV{'MYSQL_SHOW'}= $cmdline_mysqlshow;
  1759. # ----------------------------------------------------
  1760. # Setup env so childs can execute mysqlbinlog
  1761. # ----------------------------------------------------
  1762. my $cmdline_mysqlbinlog=
  1763. mtr_native_path($exe_mysqlbinlog) .
  1764. " --no-defaults";
  1765. if (!$opt_extern && $mysql_version_id >= 50000 )
  1766. {
  1767. $cmdline_mysqlbinlog .=" --character-sets-dir=$path_charsetsdir";
  1768. }
  1769. # Always use the given tmpdir for the LOAD files created
  1770. # by mysqlbinlog
  1771. $cmdline_mysqlbinlog .=" --local-load=$opt_tmpdir";
  1772. if ( $opt_debug )
  1773. {
  1774. $cmdline_mysqlbinlog .=
  1775. " --debug=d:t:A,$path_vardir_trace/log/mysqlbinlog.trace";
  1776. }
  1777. $ENV{'MYSQL_BINLOG'}= $cmdline_mysqlbinlog;
  1778. # ----------------------------------------------------
  1779. # Setup env so childs can execute mysql
  1780. # ----------------------------------------------------
  1781. my $cmdline_mysql=
  1782. mtr_native_path($exe_mysql) .
  1783. " --no-defaults --host=localhost --user=root --password= " .
  1784. "--port=$master->[0]->{'port'} " .
  1785. "--socket=$master->[0]->{'path_sock'} ".
  1786. "--character-sets-dir=$path_charsetsdir";
  1787. $ENV{'MYSQL'}= $cmdline_mysql;
  1788. # ----------------------------------------------------
  1789. # Setup env so childs can execute bug25714
  1790. # ----------------------------------------------------
  1791. $ENV{'MYSQL_BUG25714'}= $exe_bug25714;
  1792. # ----------------------------------------------------
  1793. # Setup env so childs can execute mysql_client_test
  1794. # ----------------------------------------------------
  1795. $ENV{'MYSQL_CLIENT_TEST'}= mysql_client_test_arguments();
  1796. # ----------------------------------------------------
  1797. # Setup env so childs can execute mysql_upgrade
  1798. # ----------------------------------------------------
  1799. if ( !$opt_extern && $mysql_version_id >= 50000 )
  1800. {
  1801. $ENV{'MYSQL_UPGRADE'}= mysql_upgrade_arguments();
  1802. }
  1803. # ----------------------------------------------------
  1804. # Setup env so childs can execute mysql_fix_system_tables
  1805. # ----------------------------------------------------
  1806. if ( !$opt_extern && ! $glob_win32 )
  1807. {
  1808. my $cmdline_mysql_fix_system_tables=
  1809. "$exe_mysql_fix_system_tables --no-defaults --host=localhost " .
  1810. "--user=root --password= " .
  1811. "--basedir=$glob_basedir --bindir=$path_client_bindir --verbose " .
  1812. "--port=$master->[0]->{'port'} " .
  1813. "--socket=$master->[0]->{'path_sock'}";
  1814. $ENV{'MYSQL_FIX_SYSTEM_TABLES'}= $cmdline_mysql_fix_system_tables;
  1815. }
  1816. $ENV{'MYSQL_FIX_PRIVILEGE_TABLES'}= $file_mysql_fix_privilege_tables;
  1817. # ----------------------------------------------------
  1818. # Setup env so childs can execute my_print_defaults
  1819. # ----------------------------------------------------
  1820. $ENV{'MYSQL_MY_PRINT_DEFAULTS'}= mtr_native_path($exe_my_print_defaults);
  1821. # ----------------------------------------------------
  1822. # Setup env so childs can execute mysqladmin
  1823. # ----------------------------------------------------
  1824. $ENV{'MYSQLADMIN'}= mtr_native_path($exe_mysqladmin);
  1825. # ----------------------------------------------------
  1826. # Setup env so childs can execute perror
  1827. # ----------------------------------------------------
  1828. $ENV{'MY_PERROR'}= mtr_native_path($exe_perror);
  1829. # ----------------------------------------------------
  1830. # Add the path where mysqld will find udf_example.so
  1831. # ----------------------------------------------------
  1832. $ENV{'UDF_EXAMPLE_LIB'}=
  1833. ($lib_udf_example ? basename($lib_udf_example) : "");
  1834. $ENV{'LD_LIBRARY_PATH'}=
  1835. ($lib_udf_example ? dirname($lib_udf_example) : "") .
  1836. ($ENV{'LD_LIBRARY_PATH'} ? ":$ENV{'LD_LIBRARY_PATH'}" : "");
  1837. # ----------------------------------------------------
  1838. # Setup env so childs can execute myisampack and myisamchk
  1839. # ----------------------------------------------------
  1840. $ENV{'MYISAMCHK'}= mtr_native_path(mtr_exe_exists(
  1841. vs_config_dirs('storage/myisam', 'myisamchk'),
  1842. vs_config_dirs('myisam', 'myisamchk'),
  1843. "$path_client_bindir/myisamchk",
  1844. "$glob_basedir/storage/myisam/myisamchk",
  1845. "$glob_basedir/myisam/myisamchk"));
  1846. $ENV{'MYISAMPACK'}= mtr_native_path(mtr_exe_exists(
  1847. vs_config_dirs('storage/myisam', 'myisampack'),
  1848. vs_config_dirs('myisam', 'myisampack'),
  1849. "$path_client_bindir/myisampack",
  1850. "$glob_basedir/storage/myisam/myisampack",
  1851. "$glob_basedir/myisam/myisampack"));
  1852. # ----------------------------------------------------
  1853. # We are nice and report a bit about our settings
  1854. # ----------------------------------------------------
  1855. if (!$opt_extern)
  1856. {
  1857. print "Using MTR_BUILD_THREAD = $ENV{MTR_BUILD_THREAD}\n";
  1858. print "Using MASTER_MYPORT = $ENV{MASTER_MYPORT}\n";
  1859. print "Using MASTER_MYPORT1 = $ENV{MASTER_MYPORT1}\n";
  1860. print "Using SLAVE_MYPORT = $ENV{SLAVE_MYPORT}\n";
  1861. print "Using SLAVE_MYPORT1 = $ENV{SLAVE_MYPORT1}\n";
  1862. print "Using SLAVE_MYPORT2 = $ENV{SLAVE_MYPORT2}\n";
  1863. if ( ! $opt_skip_ndbcluster )
  1864. {
  1865. print "Using NDBCLUSTER_PORT = $ENV{NDBCLUSTER_PORT}\n";
  1866. if ( ! $opt_skip_ndbcluster_slave )
  1867. {
  1868. print "Using NDBCLUSTER_PORT_SLAVE = $ENV{NDBCLUSTER_PORT_SLAVE}\n";
  1869. }
  1870. }
  1871. if ( ! $opt_skip_im )
  1872. {
  1873. print "Using IM_PORT = $ENV{IM_PORT}\n";
  1874. print "Using IM_MYSQLD1_PORT = $ENV{IM_MYSQLD1_PORT}\n";
  1875. print "Using IM_MYSQLD2_PORT = $ENV{IM_MYSQLD2_PORT}\n";
  1876. }
  1877. }
  1878. # Create an environment variable to make it possible
  1879. # to detect that valgrind is being used from test cases
  1880. $ENV{'VALGRIND_TEST'}= $opt_valgrind;
  1881. }
  1882. ##############################################################################
  1883. #
  1884. # If we get a ^C, we try to clean up before termination
  1885. #
  1886. ##############################################################################
  1887. # FIXME check restrictions what to do in a signal handler
  1888. sub signal_setup () {
  1889. $SIG{INT}= \&handle_int_signal;
  1890. }
  1891. sub handle_int_signal () {
  1892. $SIG{INT}= 'DEFAULT'; # If we get a ^C again, we die...
  1893. mtr_warning("got INT signal, cleaning up.....");
  1894. stop_all_servers();
  1895. mtr_error("We die from ^C signal from user");
  1896. }
  1897. ##############################################################################
  1898. #
  1899. # Handle left overs from previous runs
  1900. #
  1901. ##############################################################################
  1902. sub kill_running_servers () {
  1903. if ( $opt_fast or $glob_use_embedded_server )
  1904. {
  1905. # FIXME is embedded server really using PID files?!
  1906. unlink($master->[0]->{'path_pid'});
  1907. unlink($master->[1]->{'path_pid'});
  1908. unlink($slave->[0]->{'path_pid'});
  1909. unlink($slave->[1]->{'path_pid'});
  1910. unlink($slave->[2]->{'path_pid'});
  1911. }
  1912. else
  1913. {
  1914. # Ensure that no old mysqld test servers are running
  1915. # This is different from terminating processes we have
  1916. # started from this run of the script, this is terminating
  1917. # leftovers from previous runs.
  1918. mtr_kill_leftovers();
  1919. }
  1920. }
  1921. #
  1922. # Remove var and any directories in var/ created by previous
  1923. # tests
  1924. #
  1925. sub remove_stale_vardir () {
  1926. mtr_report("Removing Stale Files");
  1927. # Safety!
  1928. mtr_error("No, don't remove the vardir when running with --extern")
  1929. if $opt_extern;
  1930. mtr_verbose("opt_vardir: $opt_vardir");
  1931. if ( $opt_vardir eq $default_vardir )
  1932. {
  1933. #
  1934. # Running with "var" in mysql-test dir
  1935. #
  1936. if ( -l $opt_vardir)
  1937. {
  1938. # var is a symlink
  1939. if ( $opt_mem and readlink($opt_vardir) eq $opt_mem )
  1940. {
  1941. # Remove the directory which the link points at
  1942. mtr_verbose("Removing " . readlink($opt_vardir));
  1943. mtr_rmtree(readlink($opt_vardir));
  1944. # Remove the "var" symlink
  1945. mtr_verbose("unlink($opt_vardir)");
  1946. unlink($opt_vardir);
  1947. }
  1948. elsif ( $opt_mem )
  1949. {
  1950. # Just remove the "var" symlink
  1951. mtr_report("WARNING: Removing '$opt_vardir' symlink it's wrong");
  1952. mtr_verbose("unlink($opt_vardir)");
  1953. unlink($opt_vardir);
  1954. }
  1955. else
  1956. {
  1957. # Some users creates a soft link in mysql-test/var to another area
  1958. # - allow it, but remove all files in it
  1959. mtr_report("WARNING: Using the 'mysql-test/var' symlink");
  1960. # Make sure the directory where it points exist
  1961. mtr_error("The destination for symlink $opt_vardir does not exist")
  1962. if ! -d readlink($opt_vardir);
  1963. foreach my $bin ( glob("$opt_vardir/*") )
  1964. {
  1965. mtr_verbose("Removing bin $bin");
  1966. mtr_rmtree($bin);
  1967. }
  1968. }
  1969. }
  1970. else
  1971. {
  1972. # Remove the entire "var" dir
  1973. mtr_verbose("Removing $opt_vardir/");
  1974. mtr_rmtree("$opt_vardir/");
  1975. }
  1976. if ( $opt_mem )
  1977. {
  1978. # A symlink from var/ to $opt_mem will be set up
  1979. # remove the $opt_mem dir to assure the symlink
  1980. # won't point at an old directory
  1981. mtr_verbose("Removing $opt_mem");
  1982. mtr_rmtree($opt_mem);
  1983. }
  1984. }
  1985. else
  1986. {
  1987. #
  1988. # Running with "var" in some other place
  1989. #
  1990. # Remove the var/ dir in mysql-test dir if any
  1991. # this could be an old symlink that shouldn't be there
  1992. mtr_verbose("Removing $default_vardir");
  1993. mtr_rmtree($default_vardir);
  1994. # Remove the "var" dir
  1995. mtr_verbose("Removing $opt_vardir/");
  1996. mtr_rmtree("$opt_vardir/");
  1997. }
  1998. }
  1999. #
  2000. # Create var and the directories needed in var
  2001. #
  2002. sub setup_vardir() {
  2003. mtr_report("Creating Directories");
  2004. if ( $opt_vardir eq $default_vardir )
  2005. {
  2006. #
  2007. # Running with "var" in mysql-test dir
  2008. #
  2009. if ( -l $opt_vardir )
  2010. {
  2011. # it's a symlink
  2012. # Make sure the directory where it points exist
  2013. mtr_error("The destination for symlink $opt_vardir does not exist")
  2014. if ! -d readlink($opt_vardir);
  2015. }
  2016. elsif ( $opt_mem )
  2017. {
  2018. # Runinng with "var" as a link to some "memory" location, normally tmpfs
  2019. mtr_verbose("Creating $opt_mem");
  2020. mkpath($opt_mem);
  2021. mtr_report("Symlinking 'var' to '$opt_mem'");
  2022. symlink($opt_mem, $opt_vardir);
  2023. }
  2024. }
  2025. if ( ! -d $opt_vardir )
  2026. {
  2027. mtr_verbose("Creating $opt_vardir");
  2028. mkpath($opt_vardir);
  2029. }
  2030. # Ensure a proper error message if vardir couldn't be created
  2031. unless ( -d $opt_vardir and -w $opt_vardir )
  2032. {
  2033. mtr_error("Writable 'var' directory is needed, use the " .
  2034. "'--vardir=<path>' option");
  2035. }
  2036. mkpath("$opt_vardir/log");
  2037. mkpath("$opt_vardir/run");
  2038. mkpath("$opt_vardir/tmp");
  2039. mkpath($opt_tmpdir) if $opt_tmpdir ne "$opt_vardir/tmp";
  2040. # Create new data dirs
  2041. foreach my $data_dir (@data_dir_lst)
  2042. {
  2043. mkpath("$data_dir/mysql");
  2044. mkpath("$data_dir/test");
  2045. }
  2046. # Make a link std_data_ln in var/ that points to std_data
  2047. if ( ! $glob_win32 )
  2048. {
  2049. symlink("$glob_mysql_test_dir/std_data", "$opt_vardir/std_data_ln");
  2050. }
  2051. else
  2052. {
  2053. # on windows, copy all files from std_data into var/std_data_ln
  2054. mkpath("$opt_vardir/std_data_ln");
  2055. opendir(DIR, "$glob_mysql_test_dir/std_data")
  2056. or mtr_error("Can't find the std_data directory: $!");
  2057. for(readdir(DIR)) {
  2058. next if -d "$glob_mysql_test_dir/std_data/$_";
  2059. copy("$glob_mysql_test_dir/std_data/$_", "$opt_vardir/std_data_ln/$_");
  2060. }
  2061. closedir(DIR);
  2062. }
  2063. # Remove old log files
  2064. foreach my $name (glob("r/*.progress r/*.log r/*.warnings"))
  2065. {
  2066. unlink($name);
  2067. }
  2068. }
  2069. sub check_running_as_root () {
  2070. # Check if running as root
  2071. # i.e a file can be read regardless what mode we set it to
  2072. my $test_file= "$opt_vardir/test_running_as_root.txt";
  2073. mtr_tofile($test_file, "MySQL");
  2074. chmod(oct("0000"), $test_file);
  2075. my $result="";
  2076. if (open(FILE,"<",$test_file))
  2077. {
  2078. $result= join('', <FILE>);
  2079. close FILE;
  2080. }
  2081. # Some filesystems( for example CIFS) allows reading a file
  2082. # although mode was set to 0000, but in that case a stat on
  2083. # the file will not return 0000
  2084. my $file_mode= (stat($test_file))[2] & 07777;
  2085. $ENV{'MYSQL_TEST_ROOT'}= "NO";
  2086. mtr_verbose("result: $result, file_mode: $file_mode");
  2087. if ($result eq "MySQL" && $file_mode == 0)
  2088. {
  2089. mtr_warning("running this script as _root_ will cause some " .
  2090. "tests to be skipped");
  2091. $ENV{'MYSQL_TEST_ROOT'}= "YES";
  2092. }
  2093. chmod(oct("0755"), $test_file);
  2094. unlink($test_file);
  2095. }
  2096. sub check_ssl_support ($) {
  2097. my $mysqld_variables= shift;
  2098. if ($opt_skip_ssl || $opt_extern)
  2099. {
  2100. if (!$opt_extern)
  2101. {
  2102. mtr_report("Skipping SSL");
  2103. }
  2104. $opt_ssl_supported= 0;
  2105. $opt_ssl= 0;
  2106. return;
  2107. }
  2108. if ( ! $mysqld_variables->{'ssl'} )
  2109. {
  2110. if ( $opt_ssl)
  2111. {
  2112. mtr_error("Couldn't find support for SSL");
  2113. return;
  2114. }
  2115. mtr_report("Skipping SSL, mysqld not compiled with SSL");
  2116. $opt_ssl_supported= 0;
  2117. $opt_ssl= 0;
  2118. return;
  2119. }
  2120. mtr_report("Setting mysqld to support SSL connections");
  2121. $opt_ssl_supported= 1;
  2122. }
  2123. sub check_debug_support ($) {
  2124. my $mysqld_variables= shift;
  2125. if ( ! $mysqld_variables->{'debug'} )
  2126. {
  2127. #mtr_report("Binaries are not debug compiled");
  2128. $debug_compiled_binaries= 0;
  2129. if ( $opt_debug )
  2130. {
  2131. mtr_error("Can't use --debug, binaries does not support it");
  2132. }
  2133. return;
  2134. }
  2135. mtr_report("Binaries are debug compiled");
  2136. $debug_compiled_binaries= 1;
  2137. }
  2138. ##############################################################################
  2139. #
  2140. # Helper function to handle configuration-based subdirectories which Visual
  2141. # Studio uses for storing binaries. If opt_vs_config is set, this returns
  2142. # a path based on that setting; if not, it returns paths for the default
  2143. # /release/ and /debug/ subdirectories.
  2144. #
  2145. # $exe can be undefined, if the directory itself will be used
  2146. #
  2147. ###############################################################################
  2148. sub vs_config_dirs ($$) {
  2149. my ($path_part, $exe) = @_;
  2150. $exe = "" if not defined $exe;
  2151. if ($opt_vs_config)
  2152. {
  2153. return ("$glob_basedir/$path_part/$opt_vs_config/$exe");
  2154. }
  2155. return ("$glob_basedir/$path_part/release/$exe",
  2156. "$glob_basedir/$path_part/relwithdebinfo/$exe",
  2157. "$glob_basedir/$path_part/debug/$exe");
  2158. }
  2159. ##############################################################################
  2160. #
  2161. # Start the ndb cluster
  2162. #
  2163. ##############################################################################
  2164. sub check_ndbcluster_support ($) {
  2165. my $mysqld_variables= shift;
  2166. if ($opt_skip_ndbcluster || $opt_extern)
  2167. {
  2168. if (!$opt_extern)
  2169. {
  2170. mtr_report("Skipping ndbcluster");
  2171. }
  2172. $opt_skip_ndbcluster_slave= 1;
  2173. return;
  2174. }
  2175. if ( ! $mysqld_variables->{'ndb-connectstring'} )
  2176. {
  2177. mtr_report("Skipping ndbcluster, mysqld not compiled with ndbcluster");
  2178. $opt_skip_ndbcluster= 1;
  2179. $opt_skip_ndbcluster_slave= 1;
  2180. return;
  2181. }
  2182. $glob_ndbcluster_supported= 1;
  2183. mtr_report("Using ndbcluster when necessary, mysqld supports it");
  2184. if ( $mysql_version_id < 50100 )
  2185. {
  2186. # Slave cluster is not supported until 5.1
  2187. $opt_skip_ndbcluster_slave= 1;
  2188. }
  2189. return;
  2190. }
  2191. sub ndbcluster_start_install ($) {
  2192. my $cluster= shift;
  2193. mtr_report("Installing $cluster->{'name'} Cluster");
  2194. mkdir($cluster->{'data_dir'});
  2195. # Create a config file from template
  2196. my $ndb_no_ord=512;
  2197. my $ndb_no_attr=2048;
  2198. my $ndb_con_op=105000;
  2199. my $ndb_dmem="80M";
  2200. my $ndb_imem="24M";
  2201. my $ndb_pbmem="32M";
  2202. my $nodes= $cluster->{'nodes'};
  2203. my $ndb_host= "localhost";
  2204. my $ndb_diskless= 0;
  2205. if (!$opt_bench)
  2206. {
  2207. # Use a smaller configuration
  2208. if ( $mysql_version_id < 50100 )
  2209. {
  2210. # 4.1 and 5.0 is using a "larger" --small configuration
  2211. $ndb_no_ord=128;
  2212. $ndb_con_op=10000;
  2213. $ndb_dmem="40M";
  2214. $ndb_imem="12M";
  2215. }
  2216. else
  2217. {
  2218. $ndb_no_ord=32;
  2219. $ndb_con_op=5000;
  2220. $ndb_dmem="20M";
  2221. $ndb_imem="1M";
  2222. $ndb_pbmem="4M";
  2223. }
  2224. }
  2225. my $config_file_template= "ndb/ndb_config_${nodes}_node.ini";
  2226. my $config_file= "$cluster->{'data_dir'}/config.ini";
  2227. open(IN, $config_file_template)
  2228. or mtr_error("Can't open $config_file_template: $!");
  2229. open(OUT, ">", $config_file)
  2230. or mtr_error("Can't write to $config_file: $!");
  2231. while (<IN>)
  2232. {
  2233. chomp;
  2234. s/CHOOSE_MaxNoOfAttributes/$ndb_no_attr/;
  2235. s/CHOOSE_MaxNoOfOrderedIndexes/$ndb_no_ord/;
  2236. s/CHOOSE_MaxNoOfConcurrentOperations/$ndb_con_op/;
  2237. s/CHOOSE_DataMemory/$ndb_dmem/;
  2238. s/CHOOSE_IndexMemory/$ndb_imem/;
  2239. s/CHOOSE_Diskless/$ndb_diskless/;
  2240. s/CHOOSE_HOSTNAME_.*/$ndb_host/;
  2241. s/CHOOSE_FILESYSTEM/$cluster->{'data_dir'}/;
  2242. s/CHOOSE_PORT_MGM/$cluster->{'port'}/;
  2243. if ( $mysql_version_id < 50000 )
  2244. {
  2245. my $base_port= $cluster->{'port'} + 1;
  2246. s/CHOOSE_PORT_TRANSPORTER/$base_port/;
  2247. }
  2248. s/CHOOSE_DiskPageBufferMemory/$ndb_pbmem/;
  2249. print OUT "$_ \n";
  2250. }
  2251. close OUT;
  2252. close IN;
  2253. # Start cluster with "--initial"
  2254. ndbcluster_start($cluster, "--initial");
  2255. return 0;
  2256. }
  2257. sub ndbcluster_wait_started($$){
  2258. my $cluster= shift;
  2259. my $ndb_waiter_extra_opt= shift;
  2260. my $path_waiter_log= "$cluster->{'data_dir'}/ndb_waiter.log";
  2261. my $args;
  2262. mtr_init_args(\$args);
  2263. mtr_add_arg($args, "--no-defaults");
  2264. mtr_add_arg($args, "--core");
  2265. mtr_add_arg($args, "--ndb-connectstring=%s", $cluster->{'connect_string'});
  2266. mtr_add_arg($args, "--timeout=60");
  2267. if ($ndb_waiter_extra_opt)
  2268. {
  2269. mtr_add_arg($args, "$ndb_waiter_extra_opt");
  2270. }
  2271. # Start the ndb_waiter which will connect to the ndb_mgmd
  2272. # and poll it for state of the ndbd's, will return when
  2273. # all nodes in the cluster is started
  2274. my $res= mtr_run($exe_ndb_waiter, $args,
  2275. "", $path_waiter_log, $path_waiter_log, "");
  2276. mtr_verbose("ndbcluster_wait_started, returns: $res") if $res;
  2277. return $res;
  2278. }
  2279. sub mysqld_wait_started($){
  2280. my $mysqld= shift;
  2281. if (sleep_until_file_created($mysqld->{'path_pid'},
  2282. $mysqld->{'start_timeout'},
  2283. $mysqld->{'pid'}) == 0)
  2284. {
  2285. # Failed to wait for pid file
  2286. return 1;
  2287. }
  2288. # Get the "real pid" of the process, it will be used for killing
  2289. # the process in ActiveState's perl on windows
  2290. $mysqld->{'real_pid'}= mtr_get_pid_from_file($mysqld->{'path_pid'});
  2291. return 0;
  2292. }
  2293. sub ndb_mgmd_wait_started($) {
  2294. my ($cluster)= @_;
  2295. my $retries= 100;
  2296. while (ndbcluster_wait_started($cluster, "--no-contact") and
  2297. $retries)
  2298. {
  2299. # Millisceond sleep emulated with select
  2300. select(undef, undef, undef, (0.1));
  2301. $retries--;
  2302. }
  2303. return $retries == 0;
  2304. }
  2305. sub ndb_mgmd_start ($) {
  2306. my $cluster= shift;
  2307. my $args; # Arg vector
  2308. my $pid= -1;
  2309. mtr_init_args(\$args);
  2310. mtr_add_arg($args, "--no-defaults");
  2311. mtr_add_arg($args, "--core");
  2312. mtr_add_arg($args, "--nodaemon");
  2313. mtr_add_arg($args, "--config-file=%s", "$cluster->{'data_dir'}/config.ini");
  2314. my $path_ndb_mgmd_log= "$cluster->{'data_dir'}/\l$cluster->{'name'}_ndb_mgmd.log";
  2315. $pid= mtr_spawn($exe_ndb_mgmd, $args, "",
  2316. $path_ndb_mgmd_log,
  2317. $path_ndb_mgmd_log,
  2318. "",
  2319. { append_log_file => 1 });
  2320. # FIXME Should not be needed
  2321. # Unfortunately the cluster nodes will fail to start
  2322. # if ndb_mgmd has not started properly
  2323. if (ndb_mgmd_wait_started($cluster))
  2324. {
  2325. mtr_error("Failed to wait for start of ndb_mgmd");
  2326. }
  2327. # Remember pid of ndb_mgmd
  2328. $cluster->{'pid'}= $pid;
  2329. mtr_verbose("ndb_mgmd_start, pid: $pid");
  2330. return $pid;
  2331. }
  2332. sub ndbd_start ($$$) {
  2333. my $cluster= shift;
  2334. my $idx= shift;
  2335. my $extra_args= shift;
  2336. my $args; # Arg vector
  2337. my $pid= -1;
  2338. mtr_init_args(\$args);
  2339. mtr_add_arg($args, "--no-defaults");
  2340. mtr_add_arg($args, "--core");
  2341. mtr_add_arg($args, "--ndb-connectstring=%s", "$cluster->{'connect_string'}");
  2342. if ( $mysql_version_id >= 50000)
  2343. {
  2344. mtr_add_arg($args, "--character-sets-dir=%s", "$path_charsetsdir");
  2345. }
  2346. mtr_add_arg($args, "--nodaemon");
  2347. mtr_add_arg($args, "$extra_args");
  2348. my $nodeid= $cluster->{'ndbds'}->[$idx]->{'nodeid'};
  2349. my $path_ndbd_log= "$cluster->{'data_dir'}/ndb_${nodeid}.log";
  2350. $pid= mtr_spawn($exe_ndbd, $args, "",
  2351. $path_ndbd_log,
  2352. $path_ndbd_log,
  2353. "",
  2354. { append_log_file => 1 });
  2355. # Add pid to list of pids for this cluster
  2356. $cluster->{'ndbds'}->[$idx]->{'pid'}= $pid;
  2357. # Rememeber options used when starting
  2358. $cluster->{'ndbds'}->[$idx]->{'start_extra_args'}= $extra_args;
  2359. $cluster->{'ndbds'}->[$idx]->{'idx'}= $idx;
  2360. mtr_verbose("ndbd_start, pid: $pid");
  2361. return $pid;
  2362. }
  2363. sub ndbcluster_start ($$) {
  2364. my $cluster= shift;
  2365. my $extra_args= shift;
  2366. mtr_verbose("ndbcluster_start '$cluster->{'name'}'");
  2367. if ( $glob_use_running_ndbcluster )
  2368. {
  2369. return 0;
  2370. }
  2371. if ( $cluster->{'pid'} )
  2372. {
  2373. mtr_error("Cluster '$cluster->{'name'}' already started");
  2374. }
  2375. ndb_mgmd_start($cluster);
  2376. for ( my $idx= 0; $idx < $cluster->{'nodes'}; $idx++ )
  2377. {
  2378. ndbd_start($cluster, $idx, $extra_args);
  2379. }
  2380. return 0;
  2381. }
  2382. sub rm_ndbcluster_tables ($) {
  2383. my $dir= shift;
  2384. foreach my $bin ( glob("$dir/mysql/apply_status*"),
  2385. glob("$dir/mysql/schema*"))
  2386. {
  2387. unlink($bin);
  2388. }
  2389. }
  2390. ##############################################################################
  2391. #
  2392. # Run the benchmark suite
  2393. #
  2394. ##############################################################################
  2395. sub run_benchmarks ($) {
  2396. my $benchmark= shift;
  2397. my $args;
  2398. if ( ! $glob_use_embedded_server )
  2399. {
  2400. mysqld_start($master->[0],[],[]);
  2401. if ( ! $master->[0]->{'pid'} )
  2402. {
  2403. mtr_error("Can't start the mysqld server");
  2404. }
  2405. }
  2406. mtr_init_args(\$args);
  2407. mtr_add_arg($args, "--socket=%s", $master->[0]->{'path_sock'});
  2408. mtr_add_arg($args, "--user=%s", $opt_user);
  2409. if ( $opt_small_bench )
  2410. {
  2411. mtr_add_arg($args, "--small-test");
  2412. mtr_add_arg($args, "--small-tables");
  2413. }
  2414. if ( $opt_with_ndbcluster )
  2415. {
  2416. mtr_add_arg($args, "--create-options=TYPE=ndb");
  2417. }
  2418. chdir($glob_mysql_bench_dir)
  2419. or mtr_error("Couldn't chdir to '$glob_mysql_bench_dir': $!");
  2420. if ( ! $benchmark )
  2421. {
  2422. mtr_add_arg($args, "--log");
  2423. mtr_run("$glob_mysql_bench_dir/run-all-tests", $args, "", "", "", "");
  2424. # FIXME check result code?!
  2425. }
  2426. elsif ( -x $benchmark )
  2427. {
  2428. mtr_run("$glob_mysql_bench_dir/$benchmark", $args, "", "", "", "");
  2429. # FIXME check result code?!
  2430. }
  2431. else
  2432. {
  2433. mtr_error("Benchmark $benchmark not found");
  2434. }
  2435. chdir($glob_mysql_test_dir); # Go back
  2436. if ( ! $glob_use_embedded_server )
  2437. {
  2438. stop_masters();
  2439. }
  2440. }
  2441. ##############################################################################
  2442. #
  2443. # Run the test suite
  2444. #
  2445. ##############################################################################
  2446. sub run_suite () {
  2447. my ($suite, $tests)= @_;
  2448. mtr_print_thick_line();
  2449. mtr_timer_start($glob_timers,"suite", 60 * $opt_suite_timeout);
  2450. mtr_report("Starting Tests in the '$suite' suite");
  2451. mtr_report_tests_not_skipped_though_disabled($tests);
  2452. mtr_print_header();
  2453. foreach my $tinfo ( @$tests )
  2454. {
  2455. if (run_testcase_check_skip_test($tinfo))
  2456. {
  2457. next;
  2458. }
  2459. mtr_timer_start($glob_timers,"testcase", 60 * $opt_testcase_timeout);
  2460. run_testcase($tinfo);
  2461. mtr_timer_stop($glob_timers,"testcase");
  2462. }
  2463. mtr_print_line();
  2464. if ( ! $glob_debugger and
  2465. ! $opt_extern and
  2466. ! $glob_use_embedded_server )
  2467. {
  2468. stop_all_servers();
  2469. }
  2470. if ( $opt_gcov )
  2471. {
  2472. gcov_collect(); # collect coverage information
  2473. }
  2474. if ( $opt_gprof )
  2475. {
  2476. gprof_collect(); # collect coverage information
  2477. }
  2478. mtr_report_stats($tests);
  2479. mtr_timer_stop($glob_timers,"suite");
  2480. }
  2481. ##############################################################################
  2482. #
  2483. # Initiate the test databases
  2484. #
  2485. ##############################################################################
  2486. sub initialize_servers () {
  2487. datadir_list_setup();
  2488. if ( $opt_extern )
  2489. {
  2490. # Running against an already started server, if the specified
  2491. # vardir does not already exist it should be created
  2492. if ( ! -d $opt_vardir )
  2493. {
  2494. mtr_report("Creating '$opt_vardir'");
  2495. setup_vardir();
  2496. }
  2497. else
  2498. {
  2499. if ($opt_verbose)
  2500. {
  2501. mtr_report("No need to create '$opt_vardir' it already exists");
  2502. }
  2503. }
  2504. }
  2505. else
  2506. {
  2507. kill_running_servers();
  2508. if ( ! $opt_start_dirty )
  2509. {
  2510. remove_stale_vardir();
  2511. setup_vardir();
  2512. mysql_install_db();
  2513. if ( $opt_force )
  2514. {
  2515. # Save a snapshot of the freshly installed db
  2516. # to make it possible to restore to a known point in time
  2517. save_installed_db();
  2518. }
  2519. }
  2520. }
  2521. check_running_as_root();
  2522. mtr_log_init("$opt_vardir/log/mysql-test-run.log");
  2523. }
  2524. sub mysql_install_db () {
  2525. install_db('master', $master->[0]->{'path_myddir'});
  2526. if ($max_master_num > 1)
  2527. {
  2528. copy_install_db('master', $master->[1]->{'path_myddir'});
  2529. }
  2530. # Install the number of slave databses needed
  2531. for (my $idx= 0; $idx < $max_slave_num; $idx++)
  2532. {
  2533. copy_install_db("slave".($idx+1), $slave->[$idx]->{'path_myddir'});
  2534. }
  2535. if ( ! $opt_skip_im )
  2536. {
  2537. im_prepare_env($instance_manager);
  2538. }
  2539. my $cluster_started_ok= 1; # Assume it can be started
  2540. if ($opt_skip_ndbcluster || $glob_use_running_ndbcluster ||
  2541. $clusters->[0]->{executable_setup_failed})
  2542. {
  2543. # Don't install master cluster
  2544. }
  2545. elsif (ndbcluster_start_install($clusters->[0]))
  2546. {
  2547. mtr_warning("Failed to start install of $clusters->[0]->{name}");
  2548. $cluster_started_ok= 0;
  2549. }
  2550. if ($max_slave_num == 0 ||
  2551. $opt_skip_ndbcluster_slave || $glob_use_running_ndbcluster_slave ||
  2552. $clusters->[1]->{executable_setup_failed})
  2553. {
  2554. # Don't install slave cluster
  2555. }
  2556. elsif (ndbcluster_start_install($clusters->[1]))
  2557. {
  2558. mtr_warning("Failed to start install of $clusters->[1]->{name}");
  2559. $cluster_started_ok= 0;
  2560. }
  2561. foreach my $cluster (@{$clusters})
  2562. {
  2563. next if !$cluster->{'pid'};
  2564. $cluster->{'installed_ok'}= 1; # Assume install suceeds
  2565. if (ndbcluster_wait_started($cluster, ""))
  2566. {
  2567. # failed to install, disable usage and flag that its no ok
  2568. mtr_report("ndbcluster_install of $cluster->{'name'} failed");
  2569. $cluster->{"installed_ok"}= 0;
  2570. $cluster_started_ok= 0;
  2571. }
  2572. }
  2573. if ( ! $cluster_started_ok )
  2574. {
  2575. if ( $opt_force)
  2576. {
  2577. # Continue without cluster
  2578. }
  2579. else
  2580. {
  2581. mtr_error("To continue, re-run with '--force'.");
  2582. }
  2583. }
  2584. return 0;
  2585. }
  2586. sub copy_install_db ($$) {
  2587. my $type= shift;
  2588. my $data_dir= shift;
  2589. mtr_report("Installing \u$type Database");
  2590. # Just copy the installed db from first master
  2591. mtr_copy_dir($master->[0]->{'path_myddir'}, $data_dir);
  2592. }
  2593. sub install_db ($$) {
  2594. my $type= shift;
  2595. my $data_dir= shift;
  2596. mtr_report("Installing \u$type Database");
  2597. my $args;
  2598. mtr_init_args(\$args);
  2599. mtr_add_arg($args, "--no-defaults");
  2600. mtr_add_arg($args, "--bootstrap");
  2601. mtr_add_arg($args, "--basedir=%s", $path_my_basedir);
  2602. mtr_add_arg($args, "--datadir=%s", $data_dir);
  2603. mtr_add_arg($args, "--skip-innodb");
  2604. mtr_add_arg($args, "--skip-ndbcluster");
  2605. mtr_add_arg($args, "--tmpdir=.");
  2606. mtr_add_arg($args, "--core-file");
  2607. if ( $opt_debug )
  2608. {
  2609. mtr_add_arg($args, "--debug=d:t:i:A,%s/log/bootstrap_%s.trace",
  2610. $path_vardir_trace, $type);
  2611. }
  2612. if ( ! $glob_netware )
  2613. {
  2614. mtr_add_arg($args, "--language=%s", $path_language);
  2615. mtr_add_arg($args, "--character-sets-dir=%s", $path_charsetsdir);
  2616. }
  2617. # If DISABLE_GRANT_OPTIONS is defined when the server is compiled (e.g.,
  2618. # configure --disable-grant-options), mysqld will not recognize the
  2619. # --bootstrap or --skip-grant-tables options. The user can set
  2620. # MYSQLD_BOOTSTRAP to the full path to a mysqld which does accept
  2621. # --bootstrap, to accommodate this.
  2622. my $exe_mysqld_bootstrap = $ENV{'MYSQLD_BOOTSTRAP'} || $exe_mysqld;
  2623. # ----------------------------------------------------------------------
  2624. # export MYSQLD_BOOTSTRAP_CMD variable containing <path>/mysqld <args>
  2625. # ----------------------------------------------------------------------
  2626. $ENV{'MYSQLD_BOOTSTRAP_CMD'}= "$exe_mysqld_bootstrap " . join(" ", @$args);
  2627. # ----------------------------------------------------------------------
  2628. # Create the bootstrap.sql file
  2629. # ----------------------------------------------------------------------
  2630. my $bootstrap_sql_file= "$opt_vardir/tmp/bootstrap.sql";
  2631. # Use the mysql database for system tables
  2632. mtr_tofile($bootstrap_sql_file, "use mysql");
  2633. # Add the offical mysql system tables
  2634. # for a production system
  2635. mtr_appendfile_to_file("$path_sql_dir/mysql_system_tables.sql",
  2636. $bootstrap_sql_file);
  2637. # Add the mysql system tables initial data
  2638. # for a production system
  2639. mtr_appendfile_to_file("$path_sql_dir/mysql_system_tables_data.sql",
  2640. $bootstrap_sql_file);
  2641. # Add test data for timezone - this is just a subset, on a real
  2642. # system these tables will be populated either by mysql_tzinfo_to_sql
  2643. # or by downloading the timezone table package from our website
  2644. mtr_appendfile_to_file("$path_sql_dir/mysql_test_data_timezone.sql",
  2645. $bootstrap_sql_file);
  2646. # Fill help tables, just an empty file when running from bk repo
  2647. # but will be replaced by a real fill_help_tables.sql when
  2648. # building the source dist
  2649. mtr_appendfile_to_file("$path_sql_dir/fill_help_tables.sql",
  2650. $bootstrap_sql_file);
  2651. # Remove anonymous users
  2652. mtr_tofile($bootstrap_sql_file,
  2653. "DELETE FROM mysql.user where user= '';");
  2654. # Log bootstrap command
  2655. my $path_bootstrap_log= "$opt_vardir/log/bootstrap.log";
  2656. mtr_tofile($path_bootstrap_log,
  2657. "$exe_mysqld_bootstrap " . join(" ", @$args) . "\n");
  2658. if ( mtr_run($exe_mysqld_bootstrap, $args, $bootstrap_sql_file,
  2659. $path_bootstrap_log, $path_bootstrap_log,
  2660. "", { append_log_file => 1 }) != 0 )
  2661. {
  2662. mtr_error("Error executing mysqld --bootstrap\n" .
  2663. "Could not install system database from $bootstrap_sql_file\n" .
  2664. "see $path_bootstrap_log for errors");
  2665. }
  2666. }
  2667. sub im_prepare_env($) {
  2668. my $instance_manager = shift;
  2669. im_create_passwd_file($instance_manager);
  2670. im_prepare_data_dir($instance_manager);
  2671. }
  2672. sub im_create_passwd_file($) {
  2673. my $instance_manager = shift;
  2674. my $pwd_file_path = $instance_manager->{'password_file'};
  2675. mtr_report("Creating IM password file ($pwd_file_path)");
  2676. open(OUT, ">", $pwd_file_path)
  2677. or mtr_error("Can't write to $pwd_file_path: $!");
  2678. print OUT $instance_manager->{'admin_login'}, ":",
  2679. $instance_manager->{'admin_sha1'}, "\n";
  2680. close(OUT);
  2681. }
  2682. sub im_create_defaults_file($) {
  2683. my $instance_manager = shift;
  2684. my $defaults_file = $instance_manager->{'defaults_file'};
  2685. open(OUT, ">", $defaults_file)
  2686. or mtr_error("Can't write to $defaults_file: $!");
  2687. print OUT <<EOF
  2688. [mysql]
  2689. [manager]
  2690. pid-file = $instance_manager->{path_pid}
  2691. angel-pid-file = $instance_manager->{path_angel_pid}
  2692. socket = $instance_manager->{path_sock}
  2693. port = $instance_manager->{port}
  2694. password-file = $instance_manager->{password_file}
  2695. default-mysqld-path = $exe_mysqld
  2696. EOF
  2697. ;
  2698. foreach my $instance (@{$instance_manager->{'instances'}})
  2699. {
  2700. my $server_id = $instance->{'server_id'};
  2701. print OUT <<EOF
  2702. [mysqld$server_id]
  2703. socket = $instance->{path_sock}
  2704. pid-file = $instance->{path_pid}
  2705. port = $instance->{port}
  2706. datadir = $instance->{path_datadir}
  2707. log = $instance->{path_datadir}/mysqld$server_id.log
  2708. log-error = $instance->{path_datadir}/mysqld$server_id.err.log
  2709. log-slow-queries = $instance->{path_datadir}/mysqld$server_id.slow.log
  2710. language = $path_language
  2711. character-sets-dir = $path_charsetsdir
  2712. basedir = $path_my_basedir
  2713. server_id = $server_id
  2714. shutdown-delay = 10
  2715. skip-stack-trace
  2716. skip-innodb
  2717. skip-ndbcluster
  2718. EOF
  2719. ;
  2720. if ( $mysql_version_id < 50100 )
  2721. {
  2722. print OUT "skip-bdb\n";
  2723. }
  2724. print OUT "nonguarded\n" if $instance->{'nonguarded'};
  2725. if ( $mysql_version_id >= 50100 )
  2726. {
  2727. print OUT "log-output=FILE\n" if $instance->{'old_log_format'};
  2728. }
  2729. print OUT "\n";
  2730. }
  2731. close(OUT);
  2732. }
  2733. sub im_prepare_data_dir($) {
  2734. my $instance_manager = shift;
  2735. foreach my $instance (@{$instance_manager->{'instances'}})
  2736. {
  2737. copy_install_db(
  2738. 'im_mysqld_' . $instance->{'server_id'},
  2739. $instance->{'path_datadir'});
  2740. }
  2741. }
  2742. #
  2743. # Restore snapshot of the installed slave databases
  2744. # if the snapshot exists
  2745. #
  2746. sub restore_slave_databases ($) {
  2747. my ($num_slaves)= @_;
  2748. if ( -d $path_snapshot)
  2749. {
  2750. for (my $idx= 0; $idx < $num_slaves; $idx++)
  2751. {
  2752. my $data_dir= $slave->[$idx]->{'path_myddir'};
  2753. my $name= basename($data_dir);
  2754. mtr_rmtree($data_dir);
  2755. mtr_copy_dir("$path_snapshot/$name", $data_dir);
  2756. }
  2757. }
  2758. }
  2759. sub run_testcase_check_skip_test($)
  2760. {
  2761. my ($tinfo)= @_;
  2762. # ----------------------------------------------------------------------
  2763. # If marked to skip, just print out and return.
  2764. # Note that a test case not marked as 'skip' can still be
  2765. # skipped later, because of the test case itself in cooperation
  2766. # with the mysqltest program tells us so.
  2767. # ----------------------------------------------------------------------
  2768. if ( $tinfo->{'skip'} )
  2769. {
  2770. mtr_report_test_name($tinfo);
  2771. mtr_report_test_skipped($tinfo);
  2772. return 1;
  2773. }
  2774. if ($tinfo->{'ndb_test'})
  2775. {
  2776. foreach my $cluster (@{$clusters})
  2777. {
  2778. last if ($opt_skip_ndbcluster_slave and
  2779. $cluster->{'name'} eq 'Slave');
  2780. # If test needs this cluster, check binaries was found ok
  2781. if ( $cluster->{'executable_setup_failed'} )
  2782. {
  2783. mtr_report_test_name($tinfo);
  2784. $tinfo->{comment}=
  2785. "Failed to find cluster binaries";
  2786. mtr_report_test_failed($tinfo);
  2787. return 1;
  2788. }
  2789. # If test needs this cluster, check it was installed ok
  2790. if ( !$cluster->{'installed_ok'} )
  2791. {
  2792. mtr_report_test_name($tinfo);
  2793. $tinfo->{comment}=
  2794. "Cluster $cluster->{'name'} was not installed ok";
  2795. mtr_report_test_failed($tinfo);
  2796. return 1;
  2797. }
  2798. }
  2799. }
  2800. if ( $tinfo->{'component_id'} eq 'im' )
  2801. {
  2802. # If test needs im, check binaries was found ok
  2803. if ( $instance_manager->{'executable_setup_failed'} )
  2804. {
  2805. mtr_report_test_name($tinfo);
  2806. $tinfo->{comment}=
  2807. "Failed to find MySQL manager binaries";
  2808. mtr_report_test_failed($tinfo);
  2809. return 1;
  2810. }
  2811. }
  2812. return 0;
  2813. }
  2814. sub do_before_run_mysqltest($)
  2815. {
  2816. my $tinfo= shift;
  2817. my $tname= $tinfo->{'name'};
  2818. # Remove old files produced by mysqltest
  2819. my $result_dir= "r";
  2820. if ( $opt_suite ne "main" )
  2821. {
  2822. $result_dir= "suite/$opt_suite/r";
  2823. }
  2824. unlink("$result_dir/$tname.reject");
  2825. unlink("$result_dir/$tname.progress");
  2826. unlink("$result_dir/$tname.log");
  2827. unlink("$result_dir/$tname.warnings");
  2828. if (!$opt_extern)
  2829. {
  2830. if ( $mysql_version_id < 50000 ) {
  2831. # Set environment variable NDB_STATUS_OK to 1
  2832. # if script decided to run mysqltest cluster _is_ installed ok
  2833. $ENV{'NDB_STATUS_OK'} = "1";
  2834. } elsif ( $mysql_version_id < 50100 ) {
  2835. # Set environment variable NDB_STATUS_OK to YES
  2836. # if script decided to run mysqltest cluster _is_ installed ok
  2837. $ENV{'NDB_STATUS_OK'} = "YES";
  2838. }
  2839. }
  2840. }
  2841. sub do_after_run_mysqltest($)
  2842. {
  2843. my $tinfo= shift;
  2844. my $tname= $tinfo->{'name'};
  2845. # Save info from this testcase run to mysqltest.log
  2846. mtr_appendfile_to_file($path_current_test_log, $path_mysqltest_log)
  2847. if -f $path_current_test_log;
  2848. mtr_appendfile_to_file($path_timefile, $path_mysqltest_log)
  2849. if -f $path_timefile;
  2850. # Remove the file that mysqltest writes info to
  2851. unlink($path_timefile);
  2852. }
  2853. sub run_testcase_mark_logs($)
  2854. {
  2855. my ($log_msg)= @_;
  2856. # Write a marker to all log files
  2857. # The file indicating current test name
  2858. mtr_tonewfile($path_current_test_log, $log_msg);
  2859. # each mysqld's .err file
  2860. foreach my $mysqld (@{$master}, @{$slave})
  2861. {
  2862. mtr_tofile($mysqld->{path_myerr}, $log_msg);
  2863. }
  2864. # ndbcluster log file
  2865. mtr_tofile($path_ndb_testrun_log, $log_msg);
  2866. }
  2867. sub find_testcase_skipped_reason($)
  2868. {
  2869. my ($tinfo)= @_;
  2870. # Set default message
  2871. $tinfo->{'comment'}= "Detected by testcase(no log file)";
  2872. # Open mysqltest-time(the mysqltest log file)
  2873. my $F= IO::File->new($path_timefile)
  2874. or return;
  2875. my $reason;
  2876. while ( my $line= <$F> )
  2877. {
  2878. # Look for "reason: <reason for skipping test>"
  2879. if ( $line =~ /reason: (.*)/ )
  2880. {
  2881. $reason= $1;
  2882. }
  2883. }
  2884. if ( ! $reason )
  2885. {
  2886. mtr_warning("Could not find reason for skipping test in $path_timefile");
  2887. $reason= "Detected by testcase(reason unknown) ";
  2888. }
  2889. $tinfo->{'comment'}= $reason;
  2890. }
  2891. ##############################################################################
  2892. #
  2893. # Run a single test case
  2894. #
  2895. ##############################################################################
  2896. # When we get here, we have already filtered out test cases that doesn't
  2897. # apply to the current setup, for example if we use a running server, test
  2898. # cases that restart the server are dropped. So this function should mostly
  2899. # be about doing things, not a lot of logic.
  2900. # We don't start and kill the servers for each testcase. But some
  2901. # testcases needs a restart, because they specify options to start
  2902. # mysqld with. After that testcase, we need to restart again, to set
  2903. # back the normal options.
  2904. sub run_testcase ($) {
  2905. my $tinfo= shift;
  2906. # -------------------------------------------------------
  2907. # Init variables that can change between each test case
  2908. # -------------------------------------------------------
  2909. $ENV{'TZ'}= $tinfo->{'timezone'};
  2910. mtr_verbose("Setting timezone: $tinfo->{'timezone'}");
  2911. my $master_restart= run_testcase_need_master_restart($tinfo);
  2912. my $slave_restart= run_testcase_need_slave_restart($tinfo);
  2913. if ($master_restart or $slave_restart)
  2914. {
  2915. # Can't restart a running server that may be in use
  2916. if ( $opt_extern )
  2917. {
  2918. mtr_report_test_name($tinfo);
  2919. $tinfo->{comment}= "Can't restart a running server";
  2920. mtr_report_test_skipped($tinfo);
  2921. return;
  2922. }
  2923. run_testcase_stop_servers($tinfo, $master_restart, $slave_restart);
  2924. }
  2925. # Write to all log files to indicate start of testcase
  2926. run_testcase_mark_logs("CURRENT_TEST: $tinfo->{name}\n");
  2927. my $died= mtr_record_dead_children();
  2928. if ($died or $master_restart or $slave_restart)
  2929. {
  2930. if (run_testcase_start_servers($tinfo))
  2931. {
  2932. mtr_report_test_name($tinfo);
  2933. report_failure_and_restart($tinfo);
  2934. return 1;
  2935. }
  2936. }
  2937. # ----------------------------------------------------------------------
  2938. # If --start-and-exit or --start-dirty given, stop here to let user manually
  2939. # run tests
  2940. # ----------------------------------------------------------------------
  2941. if ( $opt_start_and_exit or $opt_start_dirty )
  2942. {
  2943. mtr_timer_stop_all($glob_timers);
  2944. mtr_report("\nServers started, exiting");
  2945. if ($glob_win32_perl)
  2946. {
  2947. #ActiveState perl hangs when using normal exit, use POSIX::_exit instead
  2948. use POSIX qw[ _exit ];
  2949. POSIX::_exit(0);
  2950. }
  2951. else
  2952. {
  2953. exit(0);
  2954. }
  2955. }
  2956. {
  2957. do_before_run_mysqltest($tinfo);
  2958. my $res= run_mysqltest($tinfo);
  2959. mtr_report_test_name($tinfo);
  2960. if ( $res == 0 )
  2961. {
  2962. mtr_report_test_passed($tinfo);
  2963. }
  2964. elsif ( $res == 62 )
  2965. {
  2966. # Testcase itself tell us to skip this one
  2967. # Try to get reason from mysqltest.log
  2968. find_testcase_skipped_reason($tinfo);
  2969. mtr_report_test_skipped($tinfo);
  2970. }
  2971. elsif ( $res == 63 )
  2972. {
  2973. $tinfo->{'timeout'}= 1; # Mark as timeout
  2974. report_failure_and_restart($tinfo);
  2975. }
  2976. elsif ( $res == 1 )
  2977. {
  2978. # Test case failure reported by mysqltest
  2979. report_failure_and_restart($tinfo);
  2980. }
  2981. else
  2982. {
  2983. # mysqltest failed, probably crashed
  2984. $tinfo->{comment}=
  2985. "mysqltest returned unexpected code $res, it has probably crashed";
  2986. report_failure_and_restart($tinfo);
  2987. }
  2988. do_after_run_mysqltest($tinfo);
  2989. }
  2990. # ----------------------------------------------------------------------
  2991. # Stop Instance Manager if we are processing an IM-test case.
  2992. # ----------------------------------------------------------------------
  2993. if ( $tinfo->{'component_id'} eq 'im' and
  2994. !mtr_im_stop($instance_manager, $tinfo->{'name'}) )
  2995. {
  2996. mtr_error("Failed to stop Instance Manager.")
  2997. }
  2998. }
  2999. #
  3000. # Save a snapshot of the installed test db(s)
  3001. # I.e take a snapshot of the var/ dir
  3002. #
  3003. sub save_installed_db () {
  3004. mtr_report("Saving snapshot of installed databases");
  3005. mtr_rmtree($path_snapshot);
  3006. foreach my $data_dir (@data_dir_lst)
  3007. {
  3008. my $name= basename($data_dir);
  3009. mtr_copy_dir("$data_dir", "$path_snapshot/$name");
  3010. }
  3011. }
  3012. #
  3013. # Save any interesting files in the data_dir
  3014. # before the data dir is removed.
  3015. #
  3016. sub save_files_before_restore($$) {
  3017. my $test_name= shift;
  3018. my $data_dir= shift;
  3019. my $save_name= "$opt_vardir/log/$test_name";
  3020. # Look for core files
  3021. foreach my $core_file ( glob("$data_dir/core*") )
  3022. {
  3023. last if $opt_max_save_core > 0 && $num_saved_cores >= $opt_max_save_core;
  3024. my $core_name= basename($core_file);
  3025. mtr_report("Saving $core_name");
  3026. mkdir($save_name) if ! -d $save_name;
  3027. rename("$core_file", "$save_name/$core_name");
  3028. ++$num_saved_cores;
  3029. }
  3030. }
  3031. #
  3032. # Restore snapshot of the installed test db(s)
  3033. # if the snapshot exists
  3034. #
  3035. sub restore_installed_db ($) {
  3036. my $test_name= shift;
  3037. if ( -d $path_snapshot)
  3038. {
  3039. mtr_report("Restoring snapshot of databases");
  3040. foreach my $data_dir (@data_dir_lst)
  3041. {
  3042. my $name= basename($data_dir);
  3043. save_files_before_restore($test_name, $data_dir);
  3044. mtr_rmtree("$data_dir");
  3045. mtr_copy_dir("$path_snapshot/$name", "$data_dir");
  3046. }
  3047. # Remove the ndb_*_fs dirs for all ndbd nodes
  3048. # forcing a clean start of ndb
  3049. foreach my $cluster (@{$clusters})
  3050. {
  3051. foreach my $ndbd (@{$cluster->{'ndbds'}})
  3052. {
  3053. mtr_rmtree("$ndbd->{'path_fs'}" );
  3054. }
  3055. }
  3056. }
  3057. else
  3058. {
  3059. # No snapshot existed
  3060. mtr_error("No snapshot existed");
  3061. }
  3062. }
  3063. sub report_failure_and_restart ($) {
  3064. my $tinfo= shift;
  3065. mtr_report_test_failed($tinfo);
  3066. print "\n";
  3067. if ( $opt_force )
  3068. {
  3069. # Stop all servers that are known to be running
  3070. stop_all_servers();
  3071. # Restore the snapshot of the installed test db
  3072. restore_installed_db($tinfo->{'name'});
  3073. mtr_report("Resuming Tests\n");
  3074. return;
  3075. }
  3076. my $test_mode= join(" ", @::glob_test_mode) || "default";
  3077. mtr_report("Aborting: $tinfo->{'name'} failed in $test_mode mode. ");
  3078. mtr_report("To continue, re-run with '--force'.");
  3079. if ( ! $glob_debugger and
  3080. ! $opt_extern and
  3081. ! $glob_use_embedded_server )
  3082. {
  3083. stop_all_servers();
  3084. }
  3085. mtr_exit(1);
  3086. }
  3087. ##############################################################################
  3088. #
  3089. # Start and stop servers
  3090. #
  3091. ##############################################################################
  3092. sub do_before_start_master ($) {
  3093. my ($tinfo)= @_;
  3094. my $tname= $tinfo->{'name'};
  3095. my $init_script= $tinfo->{'master_sh'};
  3096. # FIXME what about second master.....
  3097. # Don't delete anything if starting dirty
  3098. return if ($opt_start_dirty);
  3099. foreach my $bin ( glob("$opt_vardir/log/master*-bin*") )
  3100. {
  3101. unlink($bin);
  3102. }
  3103. # FIXME only remove the ones that are tied to this master
  3104. # Remove old master.info and relay-log.info files
  3105. unlink("$master->[0]->{'path_myddir'}/master.info");
  3106. unlink("$master->[0]->{'path_myddir'}/relay-log.info");
  3107. unlink("$master->[1]->{'path_myddir'}/master.info");
  3108. unlink("$master->[1]->{'path_myddir'}/relay-log.info");
  3109. # Run master initialization shell script if one exists
  3110. if ( $init_script )
  3111. {
  3112. my $ret= mtr_run("/bin/sh", [$init_script], "", "", "", "");
  3113. if ( $ret != 0 )
  3114. {
  3115. # FIXME rewrite those scripts to return 0 if successful
  3116. # mtr_warning("$init_script exited with code $ret");
  3117. }
  3118. }
  3119. }
  3120. sub do_before_start_slave ($) {
  3121. my ($tinfo)= @_;
  3122. my $tname= $tinfo->{'name'};
  3123. my $init_script= $tinfo->{'master_sh'};
  3124. # Don't delete anything if starting dirty
  3125. return if ($opt_start_dirty);
  3126. foreach my $bin ( glob("$opt_vardir/log/slave*-bin*") )
  3127. {
  3128. unlink($bin);
  3129. }
  3130. unlink("$slave->[0]->{'path_myddir'}/master.info");
  3131. unlink("$slave->[0]->{'path_myddir'}/relay-log.info");
  3132. # Run slave initialization shell script if one exists
  3133. if ( $init_script )
  3134. {
  3135. my $ret= mtr_run("/bin/sh", [$init_script], "", "", "", "");
  3136. if ( $ret != 0 )
  3137. {
  3138. # FIXME rewrite those scripts to return 0 if successful
  3139. # mtr_warning("$init_script exited with code $ret");
  3140. }
  3141. }
  3142. foreach my $bin ( glob("$slave->[0]->{'path_myddir'}/log.*") )
  3143. {
  3144. unlink($bin);
  3145. }
  3146. }
  3147. sub mysqld_arguments ($$$$) {
  3148. my $args= shift;
  3149. my $mysqld= shift;
  3150. my $extra_opt= shift;
  3151. my $slave_master_info= shift;
  3152. my $idx= $mysqld->{'idx'};
  3153. my $sidx= ""; # Index as string, 0 is empty string
  3154. if ( $idx> 0 )
  3155. {
  3156. $sidx= $idx;
  3157. }
  3158. my $prefix= ""; # If mysqltest server arg
  3159. if ( $glob_use_embedded_server )
  3160. {
  3161. $prefix= "--server-arg=";
  3162. }
  3163. mtr_add_arg($args, "%s--no-defaults", $prefix);
  3164. mtr_add_arg($args, "%s--basedir=%s", $prefix, $path_my_basedir);
  3165. mtr_add_arg($args, "%s--character-sets-dir=%s", $prefix, $path_charsetsdir);
  3166. if ( $mysql_version_id >= 50036)
  3167. {
  3168. # By default, prevent the started mysqld to access files outside of vardir
  3169. my $secure_file_dir= $opt_vardir;
  3170. if ( $opt_suite ne "main" and $opt_suite ne "funcs_1" )
  3171. {
  3172. # When running a suite other than default or funcs_1 allow the mysqld
  3173. # access to subdirs of mysql-test/ in order to make it possible
  3174. # to "load data" from the suites data/ directory.
  3175. $secure_file_dir= $glob_mysql_test_dir;
  3176. }
  3177. mtr_add_arg($args, "%s--secure-file-priv=%s", $prefix, $secure_file_dir);
  3178. }
  3179. if ( $mysql_version_id >= 50000 )
  3180. {
  3181. mtr_add_arg($args, "%s--log-bin-trust-function-creators", $prefix);
  3182. }
  3183. mtr_add_arg($args, "%s--default-character-set=latin1", $prefix);
  3184. mtr_add_arg($args, "%s--language=%s", $prefix, $path_language);
  3185. mtr_add_arg($args, "%s--tmpdir=$opt_tmpdir", $prefix);
  3186. # Increase default connect_timeout to avoid intermittent
  3187. # disconnects when test servers are put under load
  3188. # see BUG#28359
  3189. mtr_add_arg($args, "%s--connect-timeout=60", $prefix);
  3190. # When mysqld is run by a root user(euid is 0), it will fail
  3191. # to start unless we specify what user to run as, see BUG#30630
  3192. my $euid= $>;
  3193. if (!$glob_win32 and $euid == 0 and
  3194. grep(/^--user/, @$extra_opt, @opt_extra_mysqld_opt) == 0) {
  3195. mtr_add_arg($args, "%s--user=root", $prefix);
  3196. }
  3197. if ( $opt_valgrind_mysqld )
  3198. {
  3199. mtr_add_arg($args, "%s--skip-safemalloc", $prefix);
  3200. if ( $mysql_version_id < 50100 )
  3201. {
  3202. mtr_add_arg($args, "%s--skip-bdb", $prefix);
  3203. }
  3204. }
  3205. mtr_add_arg($args, "%s--pid-file=%s", $prefix,
  3206. $mysqld->{'path_pid'});
  3207. mtr_add_arg($args, "%s--port=%d", $prefix,
  3208. $mysqld->{'port'});
  3209. mtr_add_arg($args, "%s--socket=%s", $prefix,
  3210. $mysqld->{'path_sock'});
  3211. mtr_add_arg($args, "%s--datadir=%s", $prefix,
  3212. $mysqld->{'path_myddir'});
  3213. if ( $mysql_version_id >= 50106 )
  3214. {
  3215. # Turn on logging to bothe tables and file
  3216. mtr_add_arg($args, "%s--log-output=table,file", $prefix);
  3217. }
  3218. my $log_base_path= "$opt_vardir/log/$mysqld->{'type'}$sidx";
  3219. mtr_add_arg($args, "%s--log=%s.log", $prefix, $log_base_path);
  3220. mtr_add_arg($args,
  3221. "%s--log-slow-queries=%s-slow.log", $prefix, $log_base_path);
  3222. # Check if "extra_opt" contains --skip-log-bin
  3223. my $skip_binlog= grep(/^--skip-log-bin/, @$extra_opt, @opt_extra_mysqld_opt);
  3224. if ( $mysqld->{'type'} eq 'master' )
  3225. {
  3226. if (! ($opt_skip_master_binlog || $skip_binlog) )
  3227. {
  3228. mtr_add_arg($args, "%s--log-bin=%s/log/master-bin%s", $prefix,
  3229. $opt_vardir, $sidx);
  3230. }
  3231. mtr_add_arg($args, "%s--server-id=%d", $prefix,
  3232. $idx > 0 ? $idx + 101 : 1);
  3233. mtr_add_arg($args, "%s--innodb_data_file_path=ibdata1:10M:autoextend",
  3234. $prefix);
  3235. mtr_add_arg($args, "%s--local-infile", $prefix);
  3236. if ( $idx > 0 or !$use_innodb)
  3237. {
  3238. mtr_add_arg($args, "%s--skip-innodb", $prefix);
  3239. }
  3240. my $cluster= $clusters->[$mysqld->{'cluster'}];
  3241. if ( $opt_skip_ndbcluster ||
  3242. !$cluster->{'pid'})
  3243. {
  3244. mtr_add_arg($args, "%s--skip-ndbcluster", $prefix);
  3245. }
  3246. else
  3247. {
  3248. mtr_add_arg($args, "%s--ndbcluster", $prefix);
  3249. mtr_add_arg($args, "%s--ndb-connectstring=%s", $prefix,
  3250. $cluster->{'connect_string'});
  3251. if ( $mysql_version_id >= 50100 )
  3252. {
  3253. mtr_add_arg($args, "%s--ndb-extra-logging", $prefix);
  3254. }
  3255. }
  3256. }
  3257. else
  3258. {
  3259. mtr_error("unknown mysqld type")
  3260. unless $mysqld->{'type'} eq 'slave';
  3261. mtr_add_arg($args, "%s--init-rpl-role=slave", $prefix);
  3262. if (! ( $opt_skip_slave_binlog || $skip_binlog ))
  3263. {
  3264. mtr_add_arg($args, "%s--log-bin=%s/log/slave%s-bin", $prefix,
  3265. $opt_vardir, $sidx); # FIXME use own dir for binlogs
  3266. mtr_add_arg($args, "%s--log-slave-updates", $prefix);
  3267. }
  3268. mtr_add_arg($args, "%s--master-retry-count=10", $prefix);
  3269. mtr_add_arg($args, "%s--relay-log=%s/log/slave%s-relay-bin", $prefix,
  3270. $opt_vardir, $sidx);
  3271. mtr_add_arg($args, "%s--report-host=127.0.0.1", $prefix);
  3272. mtr_add_arg($args, "%s--report-port=%d", $prefix,
  3273. $mysqld->{'port'});
  3274. mtr_add_arg($args, "%s--report-user=root", $prefix);
  3275. mtr_add_arg($args, "%s--skip-innodb", $prefix);
  3276. mtr_add_arg($args, "%s--skip-slave-start", $prefix);
  3277. # Directory where slaves find the dumps generated by "load data"
  3278. # on the server. The path need to have constant length otherwise
  3279. # test results will vary, thus a relative path is used.
  3280. my $slave_load_path= "../tmp";
  3281. mtr_add_arg($args, "%s--slave-load-tmpdir=%s", $prefix,
  3282. $slave_load_path);
  3283. mtr_add_arg($args, "%s--set-variable=slave_net_timeout=10", $prefix);
  3284. if ( @$slave_master_info )
  3285. {
  3286. foreach my $arg ( @$slave_master_info )
  3287. {
  3288. mtr_add_arg($args, "%s%s", $prefix, $arg);
  3289. }
  3290. }
  3291. else
  3292. {
  3293. mtr_add_arg($args, "%s--master-user=root", $prefix);
  3294. mtr_add_arg($args, "%s--master-connect-retry=1", $prefix);
  3295. mtr_add_arg($args, "%s--master-host=127.0.0.1", $prefix);
  3296. mtr_add_arg($args, "%s--master-password=", $prefix);
  3297. mtr_add_arg($args, "%s--master-port=%d", $prefix,
  3298. $master->[0]->{'port'}); # First master
  3299. my $slave_server_id= 2 + $idx;
  3300. my $slave_rpl_rank= $slave_server_id;
  3301. mtr_add_arg($args, "%s--server-id=%d", $prefix, $slave_server_id);
  3302. mtr_add_arg($args, "%s--rpl-recovery-rank=%d", $prefix, $slave_rpl_rank);
  3303. }
  3304. if ( $opt_skip_ndbcluster_slave ||
  3305. $mysqld->{'cluster'} == -1 ||
  3306. !$clusters->[$mysqld->{'cluster'}]->{'pid'} )
  3307. {
  3308. mtr_add_arg($args, "%s--skip-ndbcluster", $prefix);
  3309. }
  3310. else
  3311. {
  3312. mtr_add_arg($args, "%s--ndbcluster", $prefix);
  3313. mtr_add_arg($args, "%s--ndb-connectstring=%s", $prefix,
  3314. $clusters->[$mysqld->{'cluster'}]->{'connect_string'});
  3315. if ( $mysql_version_id >= 50100 )
  3316. {
  3317. mtr_add_arg($args, "%s--ndb-extra-logging", $prefix);
  3318. }
  3319. }
  3320. } # end slave
  3321. if ( $opt_debug )
  3322. {
  3323. mtr_add_arg($args, "%s--debug=d:t:i:A,%s/log/%s%s.trace",
  3324. $prefix, $path_vardir_trace, $mysqld->{'type'}, $sidx);
  3325. }
  3326. mtr_add_arg($args, "%s--key_buffer_size=1M", $prefix);
  3327. mtr_add_arg($args, "%s--sort_buffer=256K", $prefix);
  3328. mtr_add_arg($args, "%s--max_heap_table_size=1M", $prefix);
  3329. if ( $opt_ssl_supported )
  3330. {
  3331. mtr_add_arg($args, "%s--ssl-ca=%s/std_data/cacert.pem", $prefix,
  3332. $glob_mysql_test_dir);
  3333. mtr_add_arg($args, "%s--ssl-cert=%s/std_data/server-cert.pem", $prefix,
  3334. $glob_mysql_test_dir);
  3335. mtr_add_arg($args, "%s--ssl-key=%s/std_data/server-key.pem", $prefix,
  3336. $glob_mysql_test_dir);
  3337. }
  3338. if ( $opt_warnings )
  3339. {
  3340. mtr_add_arg($args, "%s--log-warnings", $prefix);
  3341. }
  3342. # Indicate to "mysqld" it will be debugged in debugger
  3343. if ( $glob_debugger )
  3344. {
  3345. mtr_add_arg($args, "%s--gdb", $prefix);
  3346. }
  3347. my $found_skip_core= 0;
  3348. foreach my $arg ( @opt_extra_mysqld_opt, @$extra_opt )
  3349. {
  3350. # Allow --skip-core-file to be set in <testname>-[master|slave].opt file
  3351. if ($arg eq "--skip-core-file")
  3352. {
  3353. $found_skip_core= 1;
  3354. }
  3355. elsif ($skip_binlog and mtr_match_prefix($arg, "--binlog-format"))
  3356. {
  3357. ; # Dont add --binlog-format when running without binlog
  3358. }
  3359. else
  3360. {
  3361. mtr_add_arg($args, "%s%s", $prefix, $arg);
  3362. }
  3363. }
  3364. if ( !$found_skip_core )
  3365. {
  3366. mtr_add_arg($args, "%s%s", $prefix, "--core-file");
  3367. }
  3368. if ( $opt_bench )
  3369. {
  3370. mtr_add_arg($args, "%s--rpl-recovery-rank=1", $prefix);
  3371. mtr_add_arg($args, "%s--init-rpl-role=master", $prefix);
  3372. }
  3373. elsif ( $mysqld->{'type'} eq 'master' )
  3374. {
  3375. mtr_add_arg($args, "%s--open-files-limit=1024", $prefix);
  3376. }
  3377. return $args;
  3378. }
  3379. ##############################################################################
  3380. #
  3381. # Start mysqld and return the PID
  3382. #
  3383. ##############################################################################
  3384. sub mysqld_start ($$$) {
  3385. my $mysqld= shift;
  3386. my $extra_opt= shift;
  3387. my $slave_master_info= shift;
  3388. my $args; # Arg vector
  3389. my $exe;
  3390. my $pid= -1;
  3391. my $wait_for_pid_file= 1;
  3392. my $type= $mysqld->{'type'};
  3393. my $idx= $mysqld->{'idx'};
  3394. mtr_error("Internal error: mysqld should never be started for embedded")
  3395. if $glob_use_embedded_server;
  3396. if ( $type eq 'master' )
  3397. {
  3398. $exe= $exe_master_mysqld;
  3399. }
  3400. elsif ( $type eq 'slave' )
  3401. {
  3402. $exe= $exe_slave_mysqld;
  3403. }
  3404. else
  3405. {
  3406. mtr_error("Unknown 'type' \"$type\" passed to mysqld_start");
  3407. }
  3408. mtr_init_args(\$args);
  3409. if ( $opt_valgrind_mysqld )
  3410. {
  3411. valgrind_arguments($args, \$exe);
  3412. }
  3413. mysqld_arguments($args,$mysqld,$extra_opt,$slave_master_info);
  3414. if ( $opt_gdb || $opt_manual_gdb)
  3415. {
  3416. gdb_arguments(\$args, \$exe, "$type"."_$idx");
  3417. }
  3418. elsif ( $opt_ddd || $opt_manual_ddd )
  3419. {
  3420. ddd_arguments(\$args, \$exe, "$type"."_$idx");
  3421. }
  3422. elsif ( $opt_debugger )
  3423. {
  3424. debugger_arguments(\$args, \$exe, "$type"."_$idx");
  3425. }
  3426. elsif ( $opt_manual_debug )
  3427. {
  3428. print "\nStart $type in your debugger\n" .
  3429. "dir: $glob_mysql_test_dir\n" .
  3430. "exe: $exe\n" .
  3431. "args: " . join(" ", @$args) . "\n\n" .
  3432. "Waiting ....\n";
  3433. # Indicate the exe should not be started
  3434. $exe= undef;
  3435. }
  3436. else
  3437. {
  3438. # Default to not wait until pid file has been created
  3439. $wait_for_pid_file= 0;
  3440. }
  3441. # Remove the pidfile
  3442. unlink($mysqld->{'path_pid'});
  3443. if ( defined $exe )
  3444. {
  3445. $pid= mtr_spawn($exe, $args, "",
  3446. $mysqld->{'path_myerr'},
  3447. $mysqld->{'path_myerr'},
  3448. "",
  3449. { append_log_file => 1 });
  3450. }
  3451. if ( $wait_for_pid_file && !sleep_until_file_created($mysqld->{'path_pid'},
  3452. $mysqld->{'start_timeout'},
  3453. $pid))
  3454. {
  3455. mtr_error("Failed to start mysqld $mysqld->{'type'}");
  3456. }
  3457. # Remember pid of the started process
  3458. $mysqld->{'pid'}= $pid;
  3459. # Remember options used when starting
  3460. $mysqld->{'start_opts'}= $extra_opt;
  3461. $mysqld->{'start_slave_master_info'}= $slave_master_info;
  3462. mtr_verbose("mysqld pid: $pid");
  3463. return $pid;
  3464. }
  3465. sub stop_all_servers () {
  3466. mtr_report("Stopping All Servers");
  3467. if ( ! $opt_skip_im )
  3468. {
  3469. mtr_report("Shutting-down Instance Manager");
  3470. unless (mtr_im_stop($instance_manager, "stop_all_servers"))
  3471. {
  3472. mtr_error("Failed to stop Instance Manager.")
  3473. }
  3474. }
  3475. my %admin_pids; # hash of admin processes that requests shutdown
  3476. my @kill_pids; # list of processes to shutdown/kill
  3477. my $pid;
  3478. # Start shutdown of all started masters
  3479. foreach my $mysqld (@{$master}, @{$slave})
  3480. {
  3481. if ( $mysqld->{'pid'} )
  3482. {
  3483. $pid= mtr_mysqladmin_start($mysqld, "shutdown", 70);
  3484. $admin_pids{$pid}= 1;
  3485. push(@kill_pids,{
  3486. pid => $mysqld->{'pid'},
  3487. real_pid => $mysqld->{'real_pid'},
  3488. pidfile => $mysqld->{'path_pid'},
  3489. sockfile => $mysqld->{'path_sock'},
  3490. port => $mysqld->{'port'},
  3491. errfile => $mysqld->{'path_myerr'},
  3492. });
  3493. $mysqld->{'pid'}= 0; # Assume we are done with it
  3494. }
  3495. }
  3496. # Start shutdown of clusters
  3497. foreach my $cluster (@{$clusters})
  3498. {
  3499. if ( $cluster->{'pid'} )
  3500. {
  3501. $pid= mtr_ndbmgm_start($cluster, "shutdown");
  3502. $admin_pids{$pid}= 1;
  3503. push(@kill_pids,{
  3504. pid => $cluster->{'pid'},
  3505. pidfile => $cluster->{'path_pid'}
  3506. });
  3507. $cluster->{'pid'}= 0; # Assume we are done with it
  3508. foreach my $ndbd (@{$cluster->{'ndbds'}})
  3509. {
  3510. if ( $ndbd->{'pid'} )
  3511. {
  3512. push(@kill_pids,{
  3513. pid => $ndbd->{'pid'},
  3514. pidfile => $ndbd->{'path_pid'},
  3515. });
  3516. $ndbd->{'pid'}= 0;
  3517. }
  3518. }
  3519. }
  3520. }
  3521. # Wait blocking until all shutdown processes has completed
  3522. mtr_wait_blocking(\%admin_pids);
  3523. # Make sure that process has shutdown else try to kill them
  3524. mtr_check_stop_servers(\@kill_pids);
  3525. foreach my $mysqld (@{$master}, @{$slave})
  3526. {
  3527. rm_ndbcluster_tables($mysqld->{'path_myddir'});
  3528. }
  3529. }
  3530. sub run_testcase_need_master_restart($)
  3531. {
  3532. my ($tinfo)= @_;
  3533. # We try to find out if we are to restart the master(s)
  3534. my $do_restart= 0; # Assumes we don't have to
  3535. if ( $glob_use_embedded_server )
  3536. {
  3537. mtr_verbose("Never start or restart for embedded server");
  3538. return $do_restart;
  3539. }
  3540. elsif ( $tinfo->{'master_sh'} )
  3541. {
  3542. $do_restart= 1; # Always restart if script to run
  3543. mtr_verbose("Restart master: Always restart if script to run");
  3544. }
  3545. if ( $tinfo->{'force_restart'} )
  3546. {
  3547. $do_restart= 1; # Always restart if --force-restart in -opt file
  3548. mtr_verbose("Restart master: Restart forced with --force-restart");
  3549. }
  3550. elsif ( ! $opt_skip_ndbcluster and
  3551. !$tinfo->{'ndb_test'} and
  3552. $clusters->[0]->{'pid'} != 0 )
  3553. {
  3554. $do_restart= 1; # Restart without cluster
  3555. mtr_verbose("Restart master: Test does not need cluster");
  3556. }
  3557. elsif ( ! $opt_skip_ndbcluster and
  3558. $tinfo->{'ndb_test'} and
  3559. $clusters->[0]->{'pid'} == 0 )
  3560. {
  3561. $do_restart= 1; # Restart with cluster
  3562. mtr_verbose("Restart master: Test need cluster");
  3563. }
  3564. elsif( $tinfo->{'component_id'} eq 'im' )
  3565. {
  3566. $do_restart= 1;
  3567. mtr_verbose("Restart master: Always restart for im tests");
  3568. }
  3569. elsif ( $master->[0]->{'running_master_options'} and
  3570. $master->[0]->{'running_master_options'}->{'timezone'} ne
  3571. $tinfo->{'timezone'})
  3572. {
  3573. $do_restart= 1;
  3574. mtr_verbose("Restart master: Different timezone");
  3575. }
  3576. # Check that running master was started with same options
  3577. # as the current test requires
  3578. elsif (! mtr_same_opts($master->[0]->{'start_opts'},
  3579. $tinfo->{'master_opt'}) )
  3580. {
  3581. $do_restart= 1;
  3582. mtr_verbose("Restart master: running with different options '" .
  3583. join(" ", @{$tinfo->{'master_opt'}}) . "' != '" .
  3584. join(" ", @{$master->[0]->{'start_opts'}}) . "'" );
  3585. }
  3586. elsif( ! $master->[0]->{'pid'} )
  3587. {
  3588. if ( $opt_extern )
  3589. {
  3590. $do_restart= 0;
  3591. mtr_verbose("No restart: using extern master");
  3592. }
  3593. else
  3594. {
  3595. $do_restart= 1;
  3596. mtr_verbose("Restart master: master is not started");
  3597. }
  3598. }
  3599. return $do_restart;
  3600. }
  3601. sub run_testcase_need_slave_restart($)
  3602. {
  3603. my ($tinfo)= @_;
  3604. # We try to find out if we are to restart the slaves
  3605. my $do_slave_restart= 0; # Assumes we don't have to
  3606. if ( $glob_use_embedded_server )
  3607. {
  3608. mtr_verbose("Never start or restart for embedded server");
  3609. return $do_slave_restart;
  3610. }
  3611. elsif ( $max_slave_num == 0)
  3612. {
  3613. mtr_verbose("Skip slave restart: No testcase use slaves");
  3614. }
  3615. else
  3616. {
  3617. # Check if any slave is currently started
  3618. my $any_slave_started= 0;
  3619. foreach my $mysqld (@{$slave})
  3620. {
  3621. if ( $mysqld->{'pid'} )
  3622. {
  3623. $any_slave_started= 1;
  3624. last;
  3625. }
  3626. }
  3627. if ($any_slave_started)
  3628. {
  3629. mtr_verbose("Restart slave: Slave is started, always restart");
  3630. $do_slave_restart= 1;
  3631. }
  3632. elsif ( $tinfo->{'slave_num'} )
  3633. {
  3634. mtr_verbose("Restart slave: Test need slave");
  3635. $do_slave_restart= 1;
  3636. }
  3637. }
  3638. return $do_slave_restart;
  3639. }
  3640. # ----------------------------------------------------------------------
  3641. # If not using a running servers we may need to stop and restart.
  3642. # We restart in the case we have initiation scripts, server options
  3643. # etc to run. But we also restart again after the test first restart
  3644. # and test is run, to get back to normal server settings.
  3645. #
  3646. # To make the code a bit more clean, we actually only stop servers
  3647. # here, and mark this to be done. Then a generic "start" part will
  3648. # start up the needed servers again.
  3649. # ----------------------------------------------------------------------
  3650. sub run_testcase_stop_servers($$$) {
  3651. my ($tinfo, $do_restart, $do_slave_restart)= @_;
  3652. my $pid;
  3653. my %admin_pids; # hash of admin processes that requests shutdown
  3654. my @kill_pids; # list of processes to shutdown/kill
  3655. # Remember if we restarted for this test case (count restarts)
  3656. $tinfo->{'restarted'}= $do_restart;
  3657. if ( $do_restart )
  3658. {
  3659. delete $master->[0]->{'running_master_options'}; # Forget history
  3660. # Start shutdown of all started masters
  3661. foreach my $mysqld (@{$master})
  3662. {
  3663. if ( $mysqld->{'pid'} )
  3664. {
  3665. $pid= mtr_mysqladmin_start($mysqld, "shutdown", 70);
  3666. $admin_pids{$pid}= 1;
  3667. push(@kill_pids,{
  3668. pid => $mysqld->{'pid'},
  3669. real_pid => $mysqld->{'real_pid'},
  3670. pidfile => $mysqld->{'path_pid'},
  3671. sockfile => $mysqld->{'path_sock'},
  3672. port => $mysqld->{'port'},
  3673. errfile => $mysqld->{'path_myerr'},
  3674. });
  3675. $mysqld->{'pid'}= 0; # Assume we are done with it
  3676. }
  3677. }
  3678. # Start shutdown of master cluster
  3679. my $cluster= $clusters->[0];
  3680. if ( $cluster->{'pid'} )
  3681. {
  3682. $pid= mtr_ndbmgm_start($cluster, "shutdown");
  3683. $admin_pids{$pid}= 1;
  3684. push(@kill_pids,{
  3685. pid => $cluster->{'pid'},
  3686. pidfile => $cluster->{'path_pid'}
  3687. });
  3688. $cluster->{'pid'}= 0; # Assume we are done with it
  3689. foreach my $ndbd (@{$cluster->{'ndbds'}})
  3690. {
  3691. push(@kill_pids,{
  3692. pid => $ndbd->{'pid'},
  3693. pidfile => $ndbd->{'path_pid'},
  3694. });
  3695. $ndbd->{'pid'}= 0; # Assume we are done with it
  3696. }
  3697. }
  3698. }
  3699. if ( $do_restart || $do_slave_restart )
  3700. {
  3701. delete $slave->[0]->{'running_slave_options'}; # Forget history
  3702. # Start shutdown of all started slaves
  3703. foreach my $mysqld (@{$slave})
  3704. {
  3705. if ( $mysqld->{'pid'} )
  3706. {
  3707. $pid= mtr_mysqladmin_start($mysqld, "shutdown", 70);
  3708. $admin_pids{$pid}= 1;
  3709. push(@kill_pids,{
  3710. pid => $mysqld->{'pid'},
  3711. real_pid => $mysqld->{'real_pid'},
  3712. pidfile => $mysqld->{'path_pid'},
  3713. sockfile => $mysqld->{'path_sock'},
  3714. port => $mysqld->{'port'},
  3715. errfile => $mysqld->{'path_myerr'},
  3716. });
  3717. $mysqld->{'pid'}= 0; # Assume we are done with it
  3718. }
  3719. }
  3720. # Start shutdown of slave cluster
  3721. my $cluster= $clusters->[1];
  3722. if ( $cluster->{'pid'} )
  3723. {
  3724. $pid= mtr_ndbmgm_start($cluster, "shutdown");
  3725. $admin_pids{$pid}= 1;
  3726. push(@kill_pids,{
  3727. pid => $cluster->{'pid'},
  3728. pidfile => $cluster->{'path_pid'}
  3729. });
  3730. $cluster->{'pid'}= 0; # Assume we are done with it
  3731. foreach my $ndbd (@{$cluster->{'ndbds'}} )
  3732. {
  3733. push(@kill_pids,{
  3734. pid => $ndbd->{'pid'},
  3735. pidfile => $ndbd->{'path_pid'},
  3736. });
  3737. $ndbd->{'pid'}= 0; # Assume we are done with it
  3738. }
  3739. }
  3740. }
  3741. # ----------------------------------------------------------------------
  3742. # Shutdown has now been started and lists for the shutdown processes
  3743. # and the processes to be killed has been created
  3744. # ----------------------------------------------------------------------
  3745. # Wait blocking until all shutdown processes has completed
  3746. mtr_wait_blocking(\%admin_pids);
  3747. # Make sure that process has shutdown else try to kill them
  3748. mtr_check_stop_servers(\@kill_pids);
  3749. foreach my $mysqld (@{$master}, @{$slave})
  3750. {
  3751. if ( ! $mysqld->{'pid'} )
  3752. {
  3753. # Remove ndbcluster tables if server is stopped
  3754. rm_ndbcluster_tables($mysqld->{'path_myddir'});
  3755. }
  3756. }
  3757. }
  3758. #
  3759. # run_testcase_start_servers
  3760. #
  3761. # Start the servers needed by this test case
  3762. #
  3763. # RETURN
  3764. # 0 OK
  3765. # 1 Start failed
  3766. #
  3767. sub run_testcase_start_servers($) {
  3768. my $tinfo= shift;
  3769. my $tname= $tinfo->{'name'};
  3770. if ( $tinfo->{'component_id'} eq 'mysqld' )
  3771. {
  3772. if ( ! $opt_skip_ndbcluster and
  3773. !$clusters->[0]->{'pid'} and
  3774. $tinfo->{'ndb_test'} )
  3775. {
  3776. # Test need cluster, cluster is not started, start it
  3777. ndbcluster_start($clusters->[0], "");
  3778. }
  3779. if ( !$master->[0]->{'pid'} )
  3780. {
  3781. # Master mysqld is not started
  3782. do_before_start_master($tinfo);
  3783. mysqld_start($master->[0],$tinfo->{'master_opt'},[]);
  3784. }
  3785. if ( $clusters->[0]->{'pid'} and ! $master->[1]->{'pid'} and
  3786. $tinfo->{'master_num'} > 1 )
  3787. {
  3788. # Test needs cluster, start an extra mysqld connected to cluster
  3789. if ( $mysql_version_id >= 50100 )
  3790. {
  3791. # First wait for first mysql server to have created ndb system
  3792. # tables ok FIXME This is a workaround so that only one mysqld
  3793. # create the tables
  3794. if ( ! sleep_until_file_created(
  3795. "$master->[0]->{'path_myddir'}/mysql/apply_status.ndb",
  3796. $master->[0]->{'start_timeout'},
  3797. $master->[0]->{'pid'}))
  3798. {
  3799. $tinfo->{'comment'}= "Failed to create 'mysql/apply_status' table";
  3800. return 1;
  3801. }
  3802. }
  3803. mysqld_start($master->[1],$tinfo->{'master_opt'},[]);
  3804. }
  3805. # Save this test case information, so next can examine it
  3806. $master->[0]->{'running_master_options'}= $tinfo;
  3807. }
  3808. elsif ( ! $opt_skip_im and $tinfo->{'component_id'} eq 'im' )
  3809. {
  3810. # We have to create defaults file every time, in order to ensure that it
  3811. # will be the same for each test. The problem is that test can change the
  3812. # file (by SET/UNSET commands), so w/o recreating the file, execution of
  3813. # one test can affect the other.
  3814. im_create_defaults_file($instance_manager);
  3815. if ( ! mtr_im_start($instance_manager, $tinfo->{im_opts}) )
  3816. {
  3817. $tinfo->{'comment'}= "Failed to start Instance Manager. ";
  3818. return 1;
  3819. }
  3820. }
  3821. # ----------------------------------------------------------------------
  3822. # Start slaves - if needed
  3823. # ----------------------------------------------------------------------
  3824. if ( $tinfo->{'slave_num'} )
  3825. {
  3826. restore_slave_databases($tinfo->{'slave_num'});
  3827. do_before_start_slave($tinfo);
  3828. if ( ! $opt_skip_ndbcluster_slave and
  3829. !$clusters->[1]->{'pid'} and
  3830. $tinfo->{'ndb_test'} )
  3831. {
  3832. # Test need slave cluster, cluster is not started, start it
  3833. ndbcluster_start($clusters->[1], "");
  3834. }
  3835. for ( my $idx= 0; $idx < $tinfo->{'slave_num'}; $idx++ )
  3836. {
  3837. if ( ! $slave->[$idx]->{'pid'} )
  3838. {
  3839. mysqld_start($slave->[$idx],$tinfo->{'slave_opt'},
  3840. $tinfo->{'slave_mi'});
  3841. }
  3842. }
  3843. # Save this test case information, so next can examine it
  3844. $slave->[0]->{'running_slave_options'}= $tinfo;
  3845. }
  3846. # Wait for clusters to start
  3847. foreach my $cluster (@{$clusters})
  3848. {
  3849. next if !$cluster->{'pid'};
  3850. if (ndbcluster_wait_started($cluster, ""))
  3851. {
  3852. # failed to start
  3853. $tinfo->{'comment'}= "Start of $cluster->{'name'} cluster failed";
  3854. return 1;
  3855. }
  3856. }
  3857. # Wait for mysqld's to start
  3858. foreach my $mysqld (@{$master},@{$slave})
  3859. {
  3860. next if !$mysqld->{'pid'};
  3861. if (mysqld_wait_started($mysqld))
  3862. {
  3863. # failed to start
  3864. $tinfo->{'comment'}=
  3865. "Failed to start $mysqld->{'type'} mysqld $mysqld->{'idx'}";
  3866. return 1;
  3867. }
  3868. }
  3869. return 0;
  3870. }
  3871. #
  3872. # Run include/check-testcase.test
  3873. # Before a testcase, run in record mode, save result file to var
  3874. # After testcase, run and compare with the recorded file, they should be equal!
  3875. #
  3876. # RETURN VALUE
  3877. # 0 OK
  3878. # 1 Check failed
  3879. #
  3880. sub run_check_testcase ($$) {
  3881. my $mode= shift;
  3882. my $mysqld= shift;
  3883. my $name= "check-" . $mysqld->{'type'} . $mysqld->{'idx'};
  3884. my $args;
  3885. mtr_init_args(\$args);
  3886. mtr_add_arg($args, "--no-defaults");
  3887. mtr_add_arg($args, "--silent");
  3888. mtr_add_arg($args, "--skip-safemalloc");
  3889. mtr_add_arg($args, "--tmpdir=%s", $opt_tmpdir);
  3890. mtr_add_arg($args, "--character-sets-dir=%s", $path_charsetsdir);
  3891. mtr_add_arg($args, "--socket=%s", $mysqld->{'path_sock'});
  3892. mtr_add_arg($args, "--port=%d", $mysqld->{'port'});
  3893. mtr_add_arg($args, "--database=test");
  3894. mtr_add_arg($args, "--user=%s", $opt_user);
  3895. mtr_add_arg($args, "--password=");
  3896. mtr_add_arg($args, "-R");
  3897. mtr_add_arg($args, "$opt_vardir/tmp/$name.result");
  3898. if ( $mode eq "before" )
  3899. {
  3900. mtr_add_arg($args, "--record");
  3901. }
  3902. my $res = mtr_run_test($exe_mysqltest,$args,
  3903. "include/check-testcase.test", "", "", "");
  3904. if ( $res == 1 and $mode eq "after")
  3905. {
  3906. mtr_run("diff",["-u",
  3907. "$opt_vardir/tmp/$name.result",
  3908. "$opt_vardir/tmp/$name.reject"],
  3909. "", "", "", "");
  3910. }
  3911. elsif ( $res )
  3912. {
  3913. mtr_error("Could not execute 'check-testcase' $mode testcase");
  3914. }
  3915. return $res;
  3916. }
  3917. ##############################################################################
  3918. #
  3919. # Report the features that were compiled in
  3920. #
  3921. ##############################################################################
  3922. sub run_report_features () {
  3923. my $args;
  3924. if ( ! $glob_use_embedded_server )
  3925. {
  3926. mysqld_start($master->[0],[],[]);
  3927. if ( ! $master->[0]->{'pid'} )
  3928. {
  3929. mtr_error("Can't start the mysqld server");
  3930. }
  3931. mysqld_wait_started($master->[0]);
  3932. }
  3933. my $tinfo = {};
  3934. $tinfo->{'name'} = 'report features';
  3935. $tinfo->{'result_file'} = undef;
  3936. $tinfo->{'component_id'} = 'mysqld';
  3937. $tinfo->{'path'} = 'include/report-features.test';
  3938. $tinfo->{'timezone'}= "GMT-3";
  3939. $tinfo->{'slave_num'} = 0;
  3940. $tinfo->{'master_opt'} = [];
  3941. $tinfo->{'slave_opt'} = [];
  3942. $tinfo->{'slave_mi'} = [];
  3943. $tinfo->{'comment'} = 'report server features';
  3944. run_mysqltest($tinfo);
  3945. if ( ! $glob_use_embedded_server )
  3946. {
  3947. stop_all_servers();
  3948. }
  3949. }
  3950. sub run_mysqltest ($) {
  3951. my ($tinfo)= @_;
  3952. my $exe= $exe_mysqltest;
  3953. my $args;
  3954. mtr_init_args(\$args);
  3955. mtr_add_arg($args, "--no-defaults");
  3956. mtr_add_arg($args, "--silent");
  3957. mtr_add_arg($args, "--skip-safemalloc");
  3958. mtr_add_arg($args, "--tmpdir=%s", $opt_tmpdir);
  3959. mtr_add_arg($args, "--character-sets-dir=%s", $path_charsetsdir);
  3960. mtr_add_arg($args, "--logdir=%s/log", $opt_vardir);
  3961. # Log line number and time for each line in .test file
  3962. mtr_add_arg($args, "--mark-progress")
  3963. if $opt_mark_progress;
  3964. if ($tinfo->{'component_id'} eq 'im')
  3965. {
  3966. mtr_add_arg($args, "--socket=%s", $instance_manager->{'path_sock'});
  3967. mtr_add_arg($args, "--port=%d", $instance_manager->{'port'});
  3968. mtr_add_arg($args, "--user=%s", $instance_manager->{'admin_login'});
  3969. mtr_add_arg($args, "--password=%s", $instance_manager->{'admin_password'});
  3970. }
  3971. else # component_id == mysqld
  3972. {
  3973. mtr_add_arg($args, "--socket=%s", $master->[0]->{'path_sock'});
  3974. mtr_add_arg($args, "--port=%d", $master->[0]->{'port'});
  3975. mtr_add_arg($args, "--database=test");
  3976. mtr_add_arg($args, "--user=%s", $opt_user);
  3977. mtr_add_arg($args, "--password=");
  3978. }
  3979. if ( $opt_ps_protocol )
  3980. {
  3981. mtr_add_arg($args, "--ps-protocol");
  3982. }
  3983. if ( $opt_sp_protocol )
  3984. {
  3985. mtr_add_arg($args, "--sp-protocol");
  3986. }
  3987. if ( $opt_view_protocol )
  3988. {
  3989. mtr_add_arg($args, "--view-protocol");
  3990. }
  3991. if ( $opt_cursor_protocol )
  3992. {
  3993. mtr_add_arg($args, "--cursor-protocol");
  3994. }
  3995. if ( $opt_strace_client )
  3996. {
  3997. $exe= "strace"; # FIXME there are ktrace, ....
  3998. mtr_add_arg($args, "-o");
  3999. mtr_add_arg($args, "%s/log/mysqltest.strace", $opt_vardir);
  4000. mtr_add_arg($args, "$exe_mysqltest");
  4001. }
  4002. if ( $opt_timer )
  4003. {
  4004. mtr_add_arg($args, "--timer-file=%s/log/timer", $opt_vardir);
  4005. }
  4006. if ( $opt_compress )
  4007. {
  4008. mtr_add_arg($args, "--compress");
  4009. }
  4010. if ( $opt_sleep )
  4011. {
  4012. mtr_add_arg($args, "--sleep=%d", $opt_sleep);
  4013. }
  4014. if ( $opt_debug )
  4015. {
  4016. mtr_add_arg($args, "--debug=d:t:A,%s/log/mysqltest.trace",
  4017. $path_vardir_trace);
  4018. }
  4019. if ( $opt_ssl_supported )
  4020. {
  4021. mtr_add_arg($args, "--ssl-ca=%s/std_data/cacert.pem",
  4022. $glob_mysql_test_dir);
  4023. mtr_add_arg($args, "--ssl-cert=%s/std_data/client-cert.pem",
  4024. $glob_mysql_test_dir);
  4025. mtr_add_arg($args, "--ssl-key=%s/std_data/client-key.pem",
  4026. $glob_mysql_test_dir);
  4027. }
  4028. if ( $opt_ssl )
  4029. {
  4030. # Turn on SSL for _all_ test cases if option --ssl was used
  4031. mtr_add_arg($args, "--ssl");
  4032. }
  4033. elsif ( $opt_ssl_supported )
  4034. {
  4035. mtr_add_arg($args, "--skip-ssl");
  4036. }
  4037. # ----------------------------------------------------------------------
  4038. # If embedded server, we create server args to give mysqltest to pass on
  4039. # ----------------------------------------------------------------------
  4040. if ( $glob_use_embedded_server )
  4041. {
  4042. mysqld_arguments($args,$master->[0],$tinfo->{'master_opt'},[]);
  4043. }
  4044. # ----------------------------------------------------------------------
  4045. # export MYSQL_TEST variable containing <path>/mysqltest <args>
  4046. # ----------------------------------------------------------------------
  4047. $ENV{'MYSQL_TEST'}=
  4048. mtr_native_path($exe_mysqltest) . " " . join(" ", @$args);
  4049. # ----------------------------------------------------------------------
  4050. # Add arguments that should not go into the MYSQL_TEST env var
  4051. # ----------------------------------------------------------------------
  4052. if ( $opt_valgrind_mysqltest )
  4053. {
  4054. # Prefix the Valgrind options to the argument list.
  4055. # We do this here, since we do not want to Valgrind the nested invocations
  4056. # of mysqltest; that would mess up the stderr output causing test failure.
  4057. my @args_saved = @$args;
  4058. mtr_init_args(\$args);
  4059. valgrind_arguments($args, \$exe);
  4060. mtr_add_arg($args, "%s", $_) for @args_saved;
  4061. }
  4062. mtr_add_arg($args, "--test-file=%s", $tinfo->{'path'});
  4063. # Number of lines of resut to include in failure report
  4064. mtr_add_arg($args, "--tail-lines=20");
  4065. if ( defined $tinfo->{'result_file'} ) {
  4066. mtr_add_arg($args, "--result-file=%s", $tinfo->{'result_file'});
  4067. }
  4068. if ( $opt_record )
  4069. {
  4070. mtr_add_arg($args, "--record");
  4071. }
  4072. if ( $opt_client_gdb )
  4073. {
  4074. gdb_arguments(\$args, \$exe, "client");
  4075. }
  4076. elsif ( $opt_client_ddd )
  4077. {
  4078. ddd_arguments(\$args, \$exe, "client");
  4079. }
  4080. elsif ( $opt_client_debugger )
  4081. {
  4082. debugger_arguments(\$args, \$exe, "client");
  4083. }
  4084. if ( $opt_check_testcases )
  4085. {
  4086. foreach my $mysqld (@{$master}, @{$slave})
  4087. {
  4088. if ($mysqld->{'pid'})
  4089. {
  4090. run_check_testcase("before", $mysqld);
  4091. }
  4092. }
  4093. }
  4094. my $res = mtr_run_test($exe,$args,"","",$path_timefile,"");
  4095. if ( $opt_check_testcases )
  4096. {
  4097. foreach my $mysqld (@{$master}, @{$slave})
  4098. {
  4099. if ($mysqld->{'pid'})
  4100. {
  4101. if (run_check_testcase("after", $mysqld))
  4102. {
  4103. # Check failed, mark the test case with that info
  4104. $tinfo->{'check_testcase_failed'}= 1;
  4105. }
  4106. }
  4107. }
  4108. }
  4109. return $res;
  4110. }
  4111. #
  4112. # Modify the exe and args so that program is run in gdb in xterm
  4113. #
  4114. sub gdb_arguments {
  4115. my $args= shift;
  4116. my $exe= shift;
  4117. my $type= shift;
  4118. # Write $args to gdb init file
  4119. my $str= join(" ", @$$args);
  4120. my $gdb_init_file= "$opt_tmpdir/gdbinit.$type";
  4121. # Remove the old gdbinit file
  4122. unlink($gdb_init_file);
  4123. if ( $type eq "client" )
  4124. {
  4125. # write init file for client
  4126. mtr_tofile($gdb_init_file,
  4127. "set args $str\n" .
  4128. "break main\n");
  4129. }
  4130. else
  4131. {
  4132. # write init file for mysqld
  4133. mtr_tofile($gdb_init_file,
  4134. "set args $str\n" .
  4135. "break mysql_parse\n" .
  4136. "commands 1\n" .
  4137. "disable 1\n" .
  4138. "end\n" .
  4139. "run");
  4140. }
  4141. if ( $opt_manual_gdb )
  4142. {
  4143. print "\nTo start gdb for $type, type in another window:\n";
  4144. print "gdb -cd $glob_mysql_test_dir -x $gdb_init_file $$exe\n";
  4145. # Indicate the exe should not be started
  4146. $$exe= undef;
  4147. return;
  4148. }
  4149. $$args= [];
  4150. mtr_add_arg($$args, "-title");
  4151. mtr_add_arg($$args, "$type");
  4152. mtr_add_arg($$args, "-e");
  4153. if ( $exe_libtool )
  4154. {
  4155. mtr_add_arg($$args, $exe_libtool);
  4156. mtr_add_arg($$args, "--mode=execute");
  4157. }
  4158. mtr_add_arg($$args, "gdb");
  4159. mtr_add_arg($$args, "-x");
  4160. mtr_add_arg($$args, "$gdb_init_file");
  4161. mtr_add_arg($$args, "$$exe");
  4162. $$exe= "xterm";
  4163. }
  4164. #
  4165. # Modify the exe and args so that program is run in ddd
  4166. #
  4167. sub ddd_arguments {
  4168. my $args= shift;
  4169. my $exe= shift;
  4170. my $type= shift;
  4171. # Write $args to ddd init file
  4172. my $str= join(" ", @$$args);
  4173. my $gdb_init_file= "$opt_tmpdir/gdbinit.$type";
  4174. # Remove the old gdbinit file
  4175. unlink($gdb_init_file);
  4176. if ( $type eq "client" )
  4177. {
  4178. # write init file for client
  4179. mtr_tofile($gdb_init_file,
  4180. "set args $str\n" .
  4181. "break main\n");
  4182. }
  4183. else
  4184. {
  4185. # write init file for mysqld
  4186. mtr_tofile($gdb_init_file,
  4187. "file $$exe\n" .
  4188. "set args $str\n" .
  4189. "break mysql_parse\n" .
  4190. "commands 1\n" .
  4191. "disable 1\n" .
  4192. "end");
  4193. }
  4194. if ( $opt_manual_ddd )
  4195. {
  4196. print "\nTo start ddd for $type, type in another window:\n";
  4197. print "ddd -cd $glob_mysql_test_dir -x $gdb_init_file $$exe\n";
  4198. # Indicate the exe should not be started
  4199. $$exe= undef;
  4200. return;
  4201. }
  4202. my $save_exe= $$exe;
  4203. $$args= [];
  4204. if ( $exe_libtool )
  4205. {
  4206. $$exe= $exe_libtool;
  4207. mtr_add_arg($$args, "--mode=execute");
  4208. mtr_add_arg($$args, "ddd");
  4209. }
  4210. else
  4211. {
  4212. $$exe= "ddd";
  4213. }
  4214. mtr_add_arg($$args, "--command=$gdb_init_file");
  4215. mtr_add_arg($$args, "$save_exe");
  4216. }
  4217. #
  4218. # Modify the exe and args so that program is run in the selected debugger
  4219. #
  4220. sub debugger_arguments {
  4221. my $args= shift;
  4222. my $exe= shift;
  4223. my $debugger= $opt_debugger || $opt_client_debugger;
  4224. if ( $debugger =~ /vcexpress|vc|devenv/ )
  4225. {
  4226. # vc[express] /debugexe exe arg1 .. argn
  4227. # Add /debugexe and name of the exe before args
  4228. unshift(@$$args, "/debugexe");
  4229. unshift(@$$args, "$$exe");
  4230. # Set exe to debuggername
  4231. $$exe= $debugger;
  4232. }
  4233. elsif ( $debugger =~ /windbg/ )
  4234. {
  4235. # windbg exe arg1 .. argn
  4236. # Add name of the exe before args
  4237. unshift(@$$args, "$$exe");
  4238. # Set exe to debuggername
  4239. $$exe= $debugger;
  4240. }
  4241. elsif ( $debugger eq "dbx" )
  4242. {
  4243. # xterm -e dbx -r exe arg1 .. argn
  4244. unshift(@$$args, $$exe);
  4245. unshift(@$$args, "-r");
  4246. unshift(@$$args, $debugger);
  4247. unshift(@$$args, "-e");
  4248. $$exe= "xterm";
  4249. }
  4250. else
  4251. {
  4252. mtr_error("Unknown argument \"$debugger\" passed to --debugger");
  4253. }
  4254. }
  4255. #
  4256. # Modify the exe and args so that program is run in valgrind
  4257. #
  4258. sub valgrind_arguments {
  4259. my $args= shift;
  4260. my $exe= shift;
  4261. if ( $opt_callgrind)
  4262. {
  4263. mtr_add_arg($args, "--tool=callgrind");
  4264. mtr_add_arg($args, "--base=$opt_vardir/log");
  4265. }
  4266. else
  4267. {
  4268. mtr_add_arg($args, "--tool=memcheck"); # From >= 2.1.2 needs this option
  4269. mtr_add_arg($args, "--alignment=8");
  4270. mtr_add_arg($args, "--leak-check=yes");
  4271. mtr_add_arg($args, "--num-callers=16");
  4272. mtr_add_arg($args, "--suppressions=%s/valgrind.supp", $glob_mysql_test_dir)
  4273. if -f "$glob_mysql_test_dir/valgrind.supp";
  4274. }
  4275. # Add valgrind options, can be overriden by user
  4276. mtr_add_arg($args, '%s', $_) for (@valgrind_args);
  4277. mtr_add_arg($args, $$exe);
  4278. $$exe= $opt_valgrind_path || "valgrind";
  4279. if ($exe_libtool)
  4280. {
  4281. # Add "libtool --mode-execute" before the test to execute
  4282. # if running in valgrind(to avoid valgrinding bash)
  4283. unshift(@$args, "--mode=execute", $$exe);
  4284. $$exe= $exe_libtool;
  4285. }
  4286. }
  4287. ##############################################################################
  4288. #
  4289. # Usage
  4290. #
  4291. ##############################################################################
  4292. sub usage ($) {
  4293. my $message= shift;
  4294. if ( $message )
  4295. {
  4296. print STDERR "$message\n";
  4297. }
  4298. print <<HERE;
  4299. $0 [ OPTIONS ] [ TESTCASE ]
  4300. Options to control what engine/variation to run
  4301. embedded-server Use the embedded server, i.e. no mysqld daemons
  4302. ps-protocol Use the binary protocol between client and server
  4303. cursor-protocol Use the cursor protocol between client and server
  4304. (implies --ps-protocol)
  4305. view-protocol Create a view to execute all non updating queries
  4306. sp-protocol Create a stored procedure to execute all queries
  4307. compress Use the compressed protocol between client and server
  4308. ssl Use ssl protocol between client and server
  4309. skip-ssl Dont start server with support for ssl connections
  4310. bench Run the benchmark suite
  4311. small-bench Run the benchmarks with --small-tests --small-tables
  4312. ndb|with-ndbcluster Use cluster as default table type
  4313. vs-config Visual Studio configuration used to create executables
  4314. (default: MTR_VS_CONFIG environment variable)
  4315. Options to control directories to use
  4316. benchdir=DIR The directory where the benchmark suite is stored
  4317. (default: ../../mysql-bench)
  4318. tmpdir=DIR The directory where temporary files are stored
  4319. (default: ./var/tmp).
  4320. vardir=DIR The directory where files generated from the test run
  4321. is stored (default: ./var). Specifying a ramdisk or
  4322. tmpfs will speed up tests.
  4323. mem Run testsuite in "memory" using tmpfs or ramdisk
  4324. Attempts to find a suitable location
  4325. using a builtin list of standard locations
  4326. for tmpfs (/dev/shm)
  4327. The option can also be set using environment
  4328. variable MTR_MEM=[DIR]
  4329. Options to control what test suites or cases to run
  4330. force Continue to run the suite after failure
  4331. with-ndbcluster-only Run only tests that include "ndb" in the filename
  4332. skip-ndb[cluster] Skip all tests that need cluster
  4333. skip-ndb[cluster]-slave Skip all tests that need a slave cluster
  4334. ndb-extra Run extra tests from ndb directory
  4335. do-test=PREFIX or REGEX
  4336. Run test cases which name are prefixed with PREFIX
  4337. or fulfills REGEX
  4338. skip-test=PREFIX or REGEX
  4339. Skip test cases which name are prefixed with PREFIX
  4340. or fulfills REGEX
  4341. start-from=PREFIX Run test cases starting from test prefixed with PREFIX
  4342. suite=NAME Run the test suite named NAME. The default is "main"
  4343. skip-rpl Skip the replication test cases.
  4344. skip-im Don't start IM, and skip the IM test cases
  4345. big-test Set the environment variable BIG_TEST, which can be
  4346. checked from test cases.
  4347. Options that specify ports
  4348. master_port=PORT Specify the port number used by the first master
  4349. slave_port=PORT Specify the port number used by the first slave
  4350. ndbcluster-port=PORT Specify the port number used by cluster
  4351. ndbcluster-port-slave=PORT Specify the port number used by slave cluster
  4352. mtr-build-thread=# Specify unique collection of ports. Can also be set by
  4353. setting the environment variable MTR_BUILD_THREAD.
  4354. Options for test case authoring
  4355. record TESTNAME (Re)genereate the result file for TESTNAME
  4356. check-testcases Check testcases for sideeffects
  4357. mark-progress Log line number and elapsed time to <testname>.progress
  4358. Options that pass on options
  4359. mysqld=ARGS Specify additional arguments to "mysqld"
  4360. Options to run test on running server
  4361. extern Use running server for tests
  4362. ndb-connectstring=STR Use running cluster, and connect using STR
  4363. ndb-connectstring-slave=STR Use running slave cluster, and connect using STR
  4364. user=USER User for connection to extern server
  4365. socket=PATH Socket for connection to extern server
  4366. Options for debugging the product
  4367. client-ddd Start mysqltest client in ddd
  4368. client-debugger=NAME Start mysqltest in the selected debugger
  4369. client-gdb Start mysqltest client in gdb
  4370. ddd Start mysqld in ddd
  4371. debug Dump trace output for all servers and client programs
  4372. debugger=NAME Start mysqld in the selected debugger
  4373. gdb Start the mysqld(s) in gdb
  4374. manual-debug Let user manually start mysqld in debugger, before
  4375. running test(s)
  4376. manual-gdb Let user manually start mysqld in gdb, before running
  4377. test(s)
  4378. manual-ddd Let user manually start mysqld in ddd, before running
  4379. test(s)
  4380. master-binary=PATH Specify the master "mysqld" to use
  4381. slave-binary=PATH Specify the slave "mysqld" to use
  4382. strace-client Create strace output for mysqltest client
  4383. max-save-core Limit the number of core files saved (to avoid filling
  4384. up disks for heavily crashing server). Defaults to
  4385. $opt_max_save_core, set to 0 for no limit.
  4386. Options for coverage, profiling etc
  4387. gcov FIXME
  4388. gprof FIXME
  4389. valgrind Run the "mysqltest" and "mysqld" executables using
  4390. valgrind with default options
  4391. valgrind-all Synonym for --valgrind
  4392. valgrind-mysqltest Run the "mysqltest" and "mysql_client_test" executable
  4393. with valgrind
  4394. valgrind-mysqld Run the "mysqld" executable with valgrind
  4395. valgrind-options=ARGS Deprecated, use --valgrind-option
  4396. valgrind-option=ARGS Option to give valgrind, replaces default option(s),
  4397. can be specified more then once
  4398. valgrind-path=[EXE] Path to the valgrind executable
  4399. callgrind Instruct valgrind to use callgrind
  4400. Misc options
  4401. comment=STR Write STR to the output
  4402. notimer Don't show test case execution time
  4403. script-debug Debug this script itself
  4404. verbose More verbose output
  4405. start-and-exit Only initialize and start the servers, using the
  4406. startup settings for the specified test case (if any)
  4407. start-dirty Only start the servers (without initialization) for
  4408. the specified test case (if any)
  4409. fast Don't try to clean up from earlier runs
  4410. reorder Reorder tests to get fewer server restarts
  4411. help Get this help text
  4412. testcase-timeout=MINUTES Max test case run time (default $default_testcase_timeout)
  4413. suite-timeout=MINUTES Max test suite run time (default $default_suite_timeout)
  4414. warnings | log-warnings Pass --log-warnings to mysqld
  4415. sleep=SECONDS Passed to mysqltest, will be used as fixed sleep time
  4416. client-bindir=PATH Path to the directory where client binaries are located
  4417. client-libdir=PATH Path to the directory where client libraries are located
  4418. Deprecated options
  4419. with-openssl Deprecated option for ssl
  4420. HERE
  4421. mtr_exit(1);
  4422. }