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.

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