diff options
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/include/one_thread_per_connection.inc | 5 | ||||
-rw-r--r-- | mysql-test/lib/mtr_report.pl | 6 | ||||
-rwxr-xr-x | mysql-test/mysql-test-run.pl | 190 | ||||
-rw-r--r-- | mysql-test/r/keywords.result | 26 | ||||
-rw-r--r-- | mysql-test/r/ndb_lock.result | 2 | ||||
-rw-r--r-- | mysql-test/r/no-threads.result | 6 | ||||
-rw-r--r-- | mysql-test/r/one_thread_per_connection.require | 2 | ||||
-rw-r--r-- | mysql-test/r/ps.result | 6 | ||||
-rw-r--r-- | mysql-test/t/disabled.def | 1 | ||||
-rw-r--r-- | mysql-test/t/keywords.test | 43 | ||||
-rw-r--r-- | mysql-test/t/ndb_lock.test | 2 | ||||
-rw-r--r-- | mysql-test/t/no-threads-master.opt | 1 | ||||
-rw-r--r-- | mysql-test/t/no-threads.test | 5 | ||||
-rw-r--r-- | mysql-test/t/ps.test | 6 | ||||
-rw-r--r-- | mysql-test/t/wait_timeout.test | 1 |
15 files changed, 176 insertions, 126 deletions
diff --git a/mysql-test/include/one_thread_per_connection.inc b/mysql-test/include/one_thread_per_connection.inc new file mode 100644 index 00000000000..4b38800733b --- /dev/null +++ b/mysql-test/include/one_thread_per_connection.inc @@ -0,0 +1,5 @@ +-- require r/one_thread_per_connection.require +disable_query_log; +select @@thread_handling; +enable_query_log; + diff --git a/mysql-test/lib/mtr_report.pl b/mysql-test/lib/mtr_report.pl index ac18e3daff8..78986674c62 100644 --- a/mysql-test/lib/mtr_report.pl +++ b/mysql-test/lib/mtr_report.pl @@ -236,8 +236,10 @@ sub mtr_report_stats ($) { "the documentation at\n", "http://www.mysql.com/doc/en/MySQL_test_suite.html\n"; } - print - "The servers were restarted $tot_restarts times\n"; + if (!$::opt_extern) + { + print "The servers where restarted $tot_restarts times\n"; + } if ( $::opt_timer ) { diff --git a/mysql-test/mysql-test-run.pl b/mysql-test/mysql-test-run.pl index a135964e322..33836837d53 100755 --- a/mysql-test/mysql-test-run.pl +++ b/mysql-test/mysql-test-run.pl @@ -700,7 +700,9 @@ sub command_line_setup () { "$glob_basedir/client", "$glob_basedir/bin"); - $exe_mysqld= mtr_exe_exists (vs_config_dirs('sql', 'mysqld'), + if (!$opt_extern) + { + $exe_mysqld= mtr_exe_exists (vs_config_dirs('sql', 'mysqld'), "$glob_basedir/sql/mysqld", "$path_client_bindir/mysqld-max-nt", "$path_client_bindir/mysqld-max", @@ -712,8 +714,16 @@ sub command_line_setup () { "$glob_basedir/bin/mysqld", "$glob_basedir/sbin/mysqld"); - # Use the mysqld found above to find out what features are available - collect_mysqld_features(); + # Use the mysqld found above to find out what features are available + collect_mysqld_features(); + } + else + { + $mysqld_variables{'port'}= 3306; + $mysqld_variables{'master-port'}= 3306; + $opt_skip_ndbcluster= 1; + $opt_skip_im= 1; + } if ( $opt_comment ) { @@ -750,7 +760,7 @@ sub command_line_setup () { # -------------------------------------------------------------------------- # NOTE if the default binlog format is changed, this has to be changed $used_binlog_format= "stmt"; - if ( $mysql_version_id >= 50100 ) + if (!$opt_extern && $mysql_version_id >= 50100 ) { $used_binlog_format= "mixed"; # Default value for binlog format @@ -836,19 +846,20 @@ sub command_line_setup () { # -------------------------------------------------------------------------- # Check im suport # -------------------------------------------------------------------------- - if ( $mysql_version_id < 50000 ) + if (!$opt_extern) { - # Instance manager is not supported until 5.0 - $opt_skip_im= 1; + if ( $mysql_version_id < 50000 ) { + # Instance manager is not supported until 5.0 + $opt_skip_im= 1; - } + } - if ( $glob_win32 ) - { - mtr_report("Disable Instance manager - not supported on Windows"); - $opt_skip_im= 1; - } + if ( $glob_win32 ) { + mtr_report("Disable Instance manager - not supported on Windows"); + $opt_skip_im= 1; + } + } # -------------------------------------------------------------------------- # Record flag # -------------------------------------------------------------------------- @@ -1212,7 +1223,7 @@ sub command_line_setup () { $opt_skip_rpl= 1; # Setup master->[0] with the settings for the extern server - $master->[0]->{'path_sock'}= $opt_socket if $opt_socket; + $master->[0]->{'path_sock'}= $opt_socket ? $opt_socket : "/tmp/mysql.sock"; mtr_report("Using extern server at '$master->[0]->{path_sock}'"); } else @@ -1478,61 +1489,66 @@ sub executable_setup () { $exe_mysqlbinlog= mtr_exe_exists("$path_client_bindir/mysqlbinlog"); $exe_mysqladmin= mtr_exe_exists("$path_client_bindir/mysqladmin"); $exe_mysql= mtr_exe_exists("$path_client_bindir/mysql"); - if ( $mysql_version_id >= 50100 ) - { - $exe_mysqlslap= mtr_exe_exists("$path_client_bindir/mysqlslap"); - } - if ( $mysql_version_id >= 50000 and !$glob_use_embedded_server ) - { - $exe_mysql_upgrade= mtr_exe_exists("$path_client_bindir/mysql_upgrade") - } - else - { - $exe_mysql_upgrade= ""; - } - if ( ! $glob_win32 ) + if (!$opt_extern) { - # Look for mysql_fix_system_table script - $exe_mysql_fix_system_tables= - mtr_script_exists("$glob_basedir/scripts/mysql_fix_privilege_tables", - "$path_client_bindir/mysql_fix_privilege_tables"); - } + if ( $mysql_version_id >= 50100 ) + { + $exe_mysqlslap= mtr_exe_exists("$path_client_bindir/mysqlslap"); + } + if ( $mysql_version_id >= 50000 and !$glob_use_embedded_server ) + { + $exe_mysql_upgrade= mtr_exe_exists("$path_client_bindir/mysql_upgrade") + } + else + { + $exe_mysql_upgrade= ""; + } - # Look for mysql_fix_privilege_tables.sql script - $file_mysql_fix_privilege_tables= - mtr_file_exists("$glob_basedir/scripts/mysql_fix_privilege_tables.sql", - "$glob_basedir/share/mysql_fix_privilege_tables.sql"); + if ( ! $glob_win32 ) + { + # Look for mysql_fix_system_table script + $exe_mysql_fix_system_tables= + mtr_script_exists("$glob_basedir/scripts/mysql_fix_privilege_tables", + "$path_client_bindir/mysql_fix_privilege_tables"); + } - if ( ! $opt_skip_ndbcluster and executable_setup_ndb()) - { - mtr_warning("Could not find all required ndb binaries, " . - "all ndb tests will fail, use --skip-ndbcluster to " . - "skip testing it."); + # Look for mysql_fix_privilege_tables.sql script + $file_mysql_fix_privilege_tables= + mtr_file_exists("$glob_basedir/scripts/mysql_fix_privilege_tables.sql", + "$glob_basedir/share/mysql_fix_privilege_tables.sql"); - foreach my $cluster (@{$clusters}) + if ( ! $opt_skip_ndbcluster and executable_setup_ndb()) { - $cluster->{"executable_setup_failed"}= 1; + mtr_warning("Could not find all required ndb binaries, " . + "all ndb tests will fail, use --skip-ndbcluster to " . + "skip testing it."); + + foreach my $cluster (@{$clusters}) + { + $cluster->{"executable_setup_failed"}= 1; + } } - } - if ( ! $opt_skip_im and executable_setup_im()) - { - mtr_warning("Could not find all required instance manager binaries, " . - "all im tests will fail, use --skip-im to " . - "continue without instance manager"); - $instance_manager->{"executable_setup_failed"}= 1; - } + if ( ! $opt_skip_im and executable_setup_im()) + { + mtr_warning("Could not find all required instance manager binaries, " . + "all im tests will fail, use --skip-im to " . + "continue without instance manager"); + $instance_manager->{"executable_setup_failed"}= 1; + } + + # Look for the udf_example library + $lib_udf_example= + mtr_file_exists(vs_config_dirs('sql', 'udf_example.dll'), + "$glob_basedir/sql/.libs/udf_example.so",); - # Look for the udf_example library - $lib_udf_example= - mtr_file_exists(vs_config_dirs('sql', 'udf_example.dll'), - "$glob_basedir/sql/.libs/udf_example.so",); + # Look for the ha_example library + $lib_example_plugin= + mtr_file_exists(vs_config_dirs('storage/example', 'ha_example.dll'), + "$glob_basedir/storage/example/.libs/ha_example.so",); - # Look for the ha_example library - $lib_example_plugin= - mtr_file_exists(vs_config_dirs('storage/example', 'ha_example.dll'), - "$glob_basedir/storage/example/.libs/ha_example.so",); + } # Look for mysqltest executable if ( $glob_use_embedded_server ) @@ -1599,7 +1615,7 @@ sub mysql_client_test_arguments() mtr_add_arg($args, "--port=$master->[0]->{'port'}"); mtr_add_arg($args, "--socket=$master->[0]->{'path_sock'}"); - if ( $mysql_version_id >= 50000 ) + if ( $opt_extern || $mysql_version_id >= 50000 ) { mtr_add_arg($args, "--vardir=$opt_vardir") } @@ -1718,7 +1734,7 @@ sub environment_setup () { } $ENV{'LD_LIBRARY_PATH'}= join(":", @ld_library_paths, - $ENV{'LD_LIBRARY_PATHS'} ? + $ENV{'LD_LIBRARY_PATH'} ? split(':', $ENV{'LD_LIBRARY_PATH'}) : ()); mtr_debug("LD_LIBRARY_PATH: $ENV{'LD_LIBRARY_PATH'}"); @@ -1899,7 +1915,7 @@ sub environment_setup () { my $cmdline_mysqlbinlog= "$exe_mysqlbinlog" . " --no-defaults --disable-force-if-open --debug-info --local-load=$opt_tmpdir"; - if ( $mysql_version_id >= 50000 ) + if ( !$opt_extern && $mysql_version_id >= 50000 ) { $cmdline_mysqlbinlog .=" --character-sets-dir=$path_charsetsdir"; } @@ -1930,7 +1946,7 @@ sub environment_setup () { # ---------------------------------------------------- # Setup env so childs can execute mysql_upgrade # ---------------------------------------------------- - if ( $mysql_version_id >= 50000 ) + if ( !$opt_extern && $mysql_version_id >= 50000 ) { $ENV{'MYSQL_UPGRADE'}= mysql_upgrade_arguments(); } @@ -1938,7 +1954,7 @@ sub environment_setup () { # ---------------------------------------------------- # Setup env so childs can execute mysql_fix_system_tables # ---------------------------------------------------- - if ( ! $glob_win32 ) + if ( !$opt_extern && ! $glob_win32 ) { my $cmdline_mysql_fix_system_tables= "$exe_mysql_fix_system_tables --no-defaults --host=localhost " . @@ -1948,7 +1964,10 @@ sub environment_setup () { "--socket=$master->[0]->{'path_sock'}"; $ENV{'MYSQL_FIX_SYSTEM_TABLES'}= $cmdline_mysql_fix_system_tables; } - $ENV{'MYSQL_FIX_PRIVILEGE_TABLES'}= $file_mysql_fix_privilege_tables; + if (!$opt_extern) + { + $ENV{'MYSQL_FIX_PRIVILEGE_TABLES'}= $file_mysql_fix_privilege_tables; + } # ---------------------------------------------------- # Setup env so childs can execute my_print_defaults @@ -2253,7 +2272,10 @@ sub check_ssl_support ($) { if ($opt_skip_ssl || $opt_extern) { - mtr_report("Skipping SSL"); + if (!$opt_extern) + { + mtr_report("Skipping SSL"); + } $opt_ssl_supported= 0; $opt_ssl= 0; return; @@ -2328,9 +2350,12 @@ sub vs_config_dirs ($$) { sub check_ndbcluster_support ($) { my $mysqld_variables= shift; - if ($opt_skip_ndbcluster) + if ($opt_skip_ndbcluster || $opt_extern) { - mtr_report("Skipping ndbcluster"); + if (!$opt_extern) + { + mtr_report("Skipping ndbcluster"); + } $opt_skip_ndbcluster_slave= 1; return; } @@ -2746,7 +2771,10 @@ sub initialize_servers () { } else { - mtr_report("No need to create '$opt_vardir' it already exists"); + if ($opt_verbose) + { + mtr_report("No need to create '$opt_vardir' it already exists"); + } } } else @@ -3143,17 +3171,17 @@ sub do_before_run_mysqltest($) unlink("$result_dir/$tname.log"); unlink("$result_dir/$tname.warnings"); - if ( $mysql_version_id < 50000 ) - { - # Set environment variable NDB_STATUS_OK to 1 - # if script decided to run mysqltest cluster _is_ installed ok - $ENV{'NDB_STATUS_OK'} = "1"; - } - elsif ( $mysql_version_id < 50100 ) + if (!$opt_extern) { - # Set environment variable NDB_STATUS_OK to YES - # if script decided to run mysqltest cluster _is_ installed ok - $ENV{'NDB_STATUS_OK'} = "YES"; + if ( $mysql_version_id < 50000 ) { + # Set environment variable NDB_STATUS_OK to 1 + # if script decided to run mysqltest cluster _is_ installed ok + $ENV{'NDB_STATUS_OK'} = "1"; + } elsif ( $mysql_version_id < 50100 ) { + # Set environment variable NDB_STATUS_OK to YES + # if script decided to run mysqltest cluster _is_ installed ok + $ENV{'NDB_STATUS_OK'} = "YES"; + } } } @@ -4932,10 +4960,10 @@ sub usage ($) { if ( $message ) { - print STDERR "$message \n"; + print STDERR "$message\n"; } - print STDERR <<HERE; + print <<HERE; $0 [ OPTIONS ] [ TESTCASE ] diff --git a/mysql-test/r/keywords.result b/mysql-test/r/keywords.result index e4c83b21138..5f338ad6a62 100644 --- a/mysql-test/r/keywords.result +++ b/mysql-test/r/keywords.result @@ -16,19 +16,6 @@ select events.binlog from events; binlog 1 drop table events; -create table t1 (connection int, b int); -create procedure p1() -begin -declare connection int; -select max(t1.connection) into connection from t1; -select concat("max=",connection) 'p1'; -end| -insert into t1 (connection) values (1); -call p1(); -p1 -max=1 -drop procedure p1; -drop table t1; create procedure p1() begin declare n int default 2; @@ -45,3 +32,16 @@ end while contributors; end| drop procedure p1; drop procedure p2; +create table t1 (connection int, b int); +create procedure p1() +begin +declare connection int; +select max(t1.connection) into connection from t1; +select concat("max=",connection) 'p1'; +end| +insert into t1 (connection) values (1); +call p1(); +p1 +max=1 +drop procedure p1; +drop table t1; diff --git a/mysql-test/r/ndb_lock.result b/mysql-test/r/ndb_lock.result index 44eb5c8b3f3..9057731c3f4 100644 --- a/mysql-test/r/ndb_lock.result +++ b/mysql-test/r/ndb_lock.result @@ -121,7 +121,7 @@ select * from t1 where x = 1 for update; x y z 1 one 1 select * from t1 where x = 2 for update; -ERROR HY000: Lock wait timeout exceeded; try restarting transaction +Got one of the listed errors rollback; commit; begin; diff --git a/mysql-test/r/no-threads.result b/mysql-test/r/no-threads.result new file mode 100644 index 00000000000..50e52138be8 --- /dev/null +++ b/mysql-test/r/no-threads.result @@ -0,0 +1,6 @@ +select 1+1; +1+1 +2 +select 1+2; +1+2 +3 diff --git a/mysql-test/r/one_thread_per_connection.require b/mysql-test/r/one_thread_per_connection.require new file mode 100644 index 00000000000..b2efbca6441 --- /dev/null +++ b/mysql-test/r/one_thread_per_connection.require @@ -0,0 +1,2 @@ +@@thread_handling +one-thread-per-connection diff --git a/mysql-test/r/ps.result b/mysql-test/r/ps.result index a99fdb16868..7b19492faec 100644 --- a/mysql-test/r/ps.result +++ b/mysql-test/r/ps.result @@ -2157,11 +2157,11 @@ drop view v1; drop table t1; create procedure proc_1() install plugin my_plug soname 'some_plugin.so'; call proc_1(); -ERROR HY000: Can't open shared library +Got one of the listed errors call proc_1(); -ERROR HY000: Can't open shared library +Got one of the listed errors call proc_1(); -ERROR HY000: Can't open shared library +Got one of the listed errors drop procedure proc_1; create function func_1() returns int begin install plugin my_plug soname '/tmp/plugin'; return 1; end| ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger. diff --git a/mysql-test/t/disabled.def b/mysql-test/t/disabled.def index 2ed9dbcd400..ab3892cd5ca 100644 --- a/mysql-test/t/disabled.def +++ b/mysql-test/t/disabled.def @@ -39,3 +39,4 @@ synchronization : Bug#24529 Test 'synchronization' fails on Mac pushb mysql_upgrade : Bug#25074 mysql_upgrade gives inconsisten results plugin : Bug#25659 memory leak via "plugins" test rpl_ndb_dd_advance : Bug#25913 rpl_ndb_dd_advance fails randomly +ndb_alter_table : Bug##25774 ndb_alter_table.test fails in DBUG_ASSERT() on Linux x64 diff --git a/mysql-test/t/keywords.test b/mysql-test/t/keywords.test index afc7fb55d51..3080c4847b4 100644 --- a/mysql-test/t/keywords.test +++ b/mysql-test/t/keywords.test @@ -20,28 +20,6 @@ drop table events; # End of 4.1 tests - -# -# Bug#12204 - CONNECTION should not be a reserved word -# - -create table t1 (connection int, b int); -delimiter |; -create procedure p1() -begin - declare connection int; - select max(t1.connection) into connection from t1; - select concat("max=",connection) 'p1'; -end| -delimiter ;| -insert into t1 (connection) values (1); -call p1(); -drop procedure p1; -drop table t1; - - -# End of 5.0 tests - # # Bug#19939 "AUTHORS is not a keyword" # @@ -65,3 +43,24 @@ drop procedure p1; drop procedure p2; # End of 5.1 tests + +# +# Bug#12204 - CONNECTION should not be a reserved word +# + +create table t1 (connection int, b int); +delimiter |; +create procedure p1() +begin + declare connection int; + select max(t1.connection) into connection from t1; + select concat("max=",connection) 'p1'; +end| +delimiter ;| +insert into t1 (connection) values (1); +call p1(); +drop procedure p1; +drop table t1; + + +# End of 5.0 tests diff --git a/mysql-test/t/ndb_lock.test b/mysql-test/t/ndb_lock.test index b036522ad15..b6cd1ca7eb4 100644 --- a/mysql-test/t/ndb_lock.test +++ b/mysql-test/t/ndb_lock.test @@ -149,7 +149,7 @@ begin; # Have to check with pk access here since scans take locks on # all rows and then release them in chunks select * from t1 where x = 1 for update; ---error 1205 +--error 1105,1205 select * from t1 where x = 2 for update; rollback; diff --git a/mysql-test/t/no-threads-master.opt b/mysql-test/t/no-threads-master.opt new file mode 100644 index 00000000000..e263cad427c --- /dev/null +++ b/mysql-test/t/no-threads-master.opt @@ -0,0 +1 @@ +--one-thread --thread-handling=no-threads diff --git a/mysql-test/t/no-threads.test b/mysql-test/t/no-threads.test new file mode 100644 index 00000000000..806cf24e961 --- /dev/null +++ b/mysql-test/t/no-threads.test @@ -0,0 +1,5 @@ +# +# Test the --thread-handler=no-threads option +# +select 1+1; +select 1+2; diff --git a/mysql-test/t/ps.test b/mysql-test/t/ps.test index 805abe99426..14ee30f6026 100644 --- a/mysql-test/t/ps.test +++ b/mysql-test/t/ps.test @@ -2175,13 +2175,13 @@ drop table t1; create procedure proc_1() install plugin my_plug soname 'some_plugin.so'; --replace_regex /(Can\'t open shared library).*$/\1/ ---error ER_CANT_OPEN_LIBRARY +--error ER_CANT_OPEN_LIBRARY,ER_FEATURE_DISABLED call proc_1(); --replace_regex /(Can\'t open shared library).*$/\1/ ---error ER_CANT_OPEN_LIBRARY +--error ER_CANT_OPEN_LIBRARY,ER_FEATURE_DISABLED call proc_1(); --replace_regex /(Can\'t open shared library).*$/\1/ ---error ER_CANT_OPEN_LIBRARY +--error ER_CANT_OPEN_LIBRARY,ER_FEATURE_DISABLED call proc_1(); drop procedure proc_1; delimiter |; diff --git a/mysql-test/t/wait_timeout.test b/mysql-test/t/wait_timeout.test index 826a35cabdf..255947fa79f 100644 --- a/mysql-test/t/wait_timeout.test +++ b/mysql-test/t/wait_timeout.test @@ -1,5 +1,6 @@ # This tests not performed with embedded server -- source include/not_embedded.inc +-- source include/one_thread_per_connection.inc # # Bug #8731: wait_timeout does not work on Mac OS X |