summaryrefslogtreecommitdiff
path: root/mysql-test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test')
-rw-r--r--mysql-test/include/one_thread_per_connection.inc5
-rw-r--r--mysql-test/lib/mtr_report.pl6
-rwxr-xr-xmysql-test/mysql-test-run.pl190
-rw-r--r--mysql-test/r/keywords.result26
-rw-r--r--mysql-test/r/ndb_lock.result2
-rw-r--r--mysql-test/r/no-threads.result6
-rw-r--r--mysql-test/r/one_thread_per_connection.require2
-rw-r--r--mysql-test/r/ps.result6
-rw-r--r--mysql-test/t/disabled.def1
-rw-r--r--mysql-test/t/keywords.test43
-rw-r--r--mysql-test/t/ndb_lock.test2
-rw-r--r--mysql-test/t/no-threads-master.opt1
-rw-r--r--mysql-test/t/no-threads.test5
-rw-r--r--mysql-test/t/ps.test6
-rw-r--r--mysql-test/t/wait_timeout.test1
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