summaryrefslogtreecommitdiff
path: root/mysql-test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test')
-rw-r--r--mysql-test/extra/rpl_tests/rpl_binlog_max_cache_size.test19
-rw-r--r--mysql-test/extra/rpl_tests/rpl_flsh_tbls.test2
-rw-r--r--mysql-test/include/default_client.cnf3
-rw-r--r--mysql-test/include/default_mysqld.cnf2
-rw-r--r--mysql-test/include/index_merge_ror.inc1
-rw-r--r--mysql-test/lib/My/ConfigFactory.pm1
-rw-r--r--mysql-test/lib/My/Test.pm2
-rwxr-xr-xmysql-test/mysql-test-run.pl108
-rw-r--r--mysql-test/r/bootstrap.result6
-rw-r--r--mysql-test/r/ctype_binary.result4
-rw-r--r--mysql-test/r/ctype_cp1251.result4
-rw-r--r--mysql-test/r/ctype_latin1.result4
-rw-r--r--mysql-test/r/ctype_ucs.result2
-rw-r--r--mysql-test/r/ctype_utf8.result4
-rw-r--r--mysql-test/r/func_math.result2
-rw-r--r--mysql-test/r/grant.result8
-rw-r--r--mysql-test/r/grant2.result4
-rw-r--r--mysql-test/r/group_by.result4
-rw-r--r--mysql-test/r/index_merge_myisam.result4
-rw-r--r--mysql-test/r/join_outer.result5
-rw-r--r--mysql-test/r/join_outer_jcl6.result302
-rw-r--r--mysql-test/r/kill.result1
-rw-r--r--mysql-test/r/myisam_mrr.result2
-rw-r--r--mysql-test/r/mysqlcheck.result3
-rw-r--r--mysql-test/r/mysqld--help-notwin.result3
-rw-r--r--mysql-test/r/openssl_1.result2
-rw-r--r--mysql-test/r/plugin.result6
-rw-r--r--mysql-test/r/plugin_auth.result80
-rw-r--r--mysql-test/r/plugin_auth_qa.result34
-rw-r--r--mysql-test/r/plugin_auth_qa_1.result38
-rw-r--r--mysql-test/r/plugin_auth_qa_2.result40
-rw-r--r--mysql-test/r/plugin_auth_qa_3.result4
-rw-r--r--mysql-test/r/range.result12
-rw-r--r--mysql-test/r/select.result10
-rw-r--r--mysql-test/r/select_jcl6.result109
-rw-r--r--mysql-test/r/select_pkeycache.result93
-rw-r--r--mysql-test/r/sp_notembedded.result2
-rw-r--r--mysql-test/r/subselect3.result3
-rw-r--r--mysql-test/r/subselect3_jcl6.result3
-rw-r--r--mysql-test/r/subselect_no_mat.result82
-rw-r--r--mysql-test/r/subselect_no_opts.result82
-rw-r--r--mysql-test/r/subselect_no_semijoin.result82
-rw-r--r--mysql-test/r/table_options.result46
-rw-r--r--mysql-test/r/variables.result1
-rw-r--r--mysql-test/r/xa.result4
-rw-r--r--mysql-test/suite/binlog/t/binlog_database.test3
-rw-r--r--mysql-test/suite/binlog/t/binlog_spurious_ddl_errors-master.opt2
-rw-r--r--mysql-test/suite/binlog/t/binlog_unsafe-master.opt2
-rw-r--r--mysql-test/suite/federated/federated_bug_35333.result36
-rw-r--r--mysql-test/suite/federated/federated_bug_35333.test23
-rw-r--r--mysql-test/suite/federated/federated_debug.test2
-rw-r--r--mysql-test/suite/innodb/r/innodb-create-options.result78
-rw-r--r--mysql-test/suite/innodb/r/innodb-use-sys-malloc.result48
-rw-r--r--mysql-test/suite/innodb/r/innodb_index_large_prefix.result8
-rw-r--r--mysql-test/suite/innodb/t/innodb-use-sys-malloc-master.opt2
-rw-r--r--mysql-test/suite/innodb/t/innodb-use-sys-malloc.test27
-rw-r--r--mysql-test/suite/parts/r/partition_auto_increment_maria.result72
-rw-r--r--mysql-test/suite/parts/r/partition_decimal_innodb.result54
-rw-r--r--mysql-test/suite/parts/r/partition_decimal_myisam.result54
-rw-r--r--mysql-test/suite/parts/r/partition_recover_myisam.result2
-rw-r--r--mysql-test/suite/parts/t/partition_recover_myisam.test2
-rw-r--r--mysql-test/suite/perfschema/r/pfs_upgrade.result180
-rw-r--r--mysql-test/suite/rpl/r/rpl_ddl.result12
-rw-r--r--mysql-test/suite/rpl/r/rpl_do_grant.result6
-rw-r--r--mysql-test/suite/rpl/r/rpl_ignore_table.result2
-rw-r--r--mysql-test/suite/rpl/r/rpl_log_pos.result3
-rw-r--r--mysql-test/suite/rpl/r/rpl_mixed_binlog_max_cache_size.result20
-rw-r--r--mysql-test/suite/rpl/r/rpl_mixed_implicit_commit_binlog.result1
-rw-r--r--mysql-test/suite/rpl/r/rpl_optimize.result1
-rw-r--r--mysql-test/suite/rpl/r/rpl_rotate_logs.result4
-rw-r--r--mysql-test/suite/rpl/r/rpl_row_binlog_max_cache_size.result20
-rw-r--r--mysql-test/suite/rpl/r/rpl_row_implicit_commit_binlog.result1
-rw-r--r--mysql-test/suite/rpl/r/rpl_stm_000001.result2
-rw-r--r--mysql-test/suite/rpl/r/rpl_stm_binlog_max_cache_size.result20
-rw-r--r--mysql-test/suite/rpl/r/rpl_stm_maria.result9
-rw-r--r--mysql-test/suite/rpl/r/rpl_table_options.result9
-rw-r--r--mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result6
-rw-r--r--mysql-test/suite/rpl/r/rpl_temporary.result3
-rw-r--r--mysql-test/suite/rpl/t/rpl_do_grant.test15
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_flsh_tbls.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_stm_flsh_tbls.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_stm_maria.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_table_options.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test4
-rw-r--r--mysql-test/suite/sys_vars/r/multi_range_count_basic_64.result57
-rw-r--r--mysql-test/suite/sys_vars/r/sql_big_selects_func.result2
-rw-r--r--mysql-test/suite/sys_vars/r/sql_max_join_size_basic.result10
-rw-r--r--mysql-test/suite/sys_vars/r/sql_max_join_size_func.result14
-rw-r--r--mysql-test/suite/sys_vars/t/maria_used_for_temp_tables_basic.test2
-rw-r--r--mysql-test/suite/sys_vars/t/plugin_dir_basic.test2
-rw-r--r--mysql-test/suite/vcol/r/rpl_vcol.result9
-rw-r--r--mysql-test/suite/vcol/r/vcol_ins_upd_myisam.result20
-rw-r--r--mysql-test/suite/vcol/r/vcol_misc.result4
-rw-r--r--mysql-test/suite/vcol/t/rpl_vcol.test2
-rw-r--r--mysql-test/t/bootstrap.test3
-rw-r--r--mysql-test/t/disabled.def1
-rw-r--r--mysql-test/t/file_contents.test4
-rw-r--r--mysql-test/t/insert_select.test2
-rw-r--r--mysql-test/t/join_outer.test30
-rw-r--r--mysql-test/t/mysql_client_test-master.opt3
-rw-r--r--mysql-test/t/mysql_client_test.test2
-rw-r--r--mysql-test/t/mysqladmin.test22
-rw-r--r--mysql-test/t/plugin_auth-master.opt3
-rw-r--r--mysql-test/t/plugin_auth.test21
-rw-r--r--mysql-test/t/plugin_auth_qa-master.opt3
-rw-r--r--mysql-test/t/plugin_auth_qa.test2
-rw-r--r--mysql-test/t/plugin_auth_qa_1-master.opt3
-rw-r--r--mysql-test/t/plugin_auth_qa_1.test48
-rw-r--r--mysql-test/t/plugin_auth_qa_2-master.opt3
-rw-r--r--mysql-test/t/plugin_auth_qa_2.test36
-rw-r--r--mysql-test/t/plugin_auth_qa_3-master.opt3
-rw-r--r--mysql-test/t/plugin_auth_qa_3.test8
-rw-r--r--mysql-test/t/plugin_load_option-master.opt3
-rw-r--r--mysql-test/t/plugin_not_embedded.test2
-rw-r--r--mysql-test/t/select.test12
-rw-r--r--mysql-test/t/symlink.test2
-rw-r--r--mysql-test/t/xa.test4
117 files changed, 1415 insertions, 901 deletions
diff --git a/mysql-test/extra/rpl_tests/rpl_binlog_max_cache_size.test b/mysql-test/extra/rpl_tests/rpl_binlog_max_cache_size.test
index 54b5c95080e..e1faec8440b 100644
--- a/mysql-test/extra/rpl_tests/rpl_binlog_max_cache_size.test
+++ b/mysql-test/extra/rpl_tests/rpl_binlog_max_cache_size.test
@@ -98,6 +98,7 @@ connection master;
TRUNCATE TABLE t1;
TRUNCATE TABLE t2;
TRUNCATE TABLE t3;
+set default_storage_engine=innodb;
BEGIN;
--disable_query_log
@@ -110,14 +111,12 @@ BEGIN;
--eval INSERT INTO t1 (a, data) VALUES (5, $data);
--error ER_TRANS_CACHE_FULL, ER_STMT_CACHE_FULL, ER_ERROR_ON_WRITE
--eval INSERT INTO t1 (a, data) VALUES (6, $data);
+--enable_query_log
--eval INSERT INTO t1 (a, data) VALUES (7, 's');
--eval INSERT INTO t2 (a, data) VALUES (8, 's');
--eval INSERT INTO t1 (a, data) VALUES (9, 's');
---enable_query_log
---disable_query_log
ALTER TABLE t3 ADD COLUMN d int;
---enable_query_log
--disable_query_log
--eval INSERT INTO t2 (a, data) VALUES (10, $data);
@@ -135,23 +134,19 @@ BEGIN;
--eval INSERT INTO t1 (a, data) VALUES (17, $data);
--error ER_TRANS_CACHE_FULL, ER_STMT_CACHE_FULL, ER_ERROR_ON_WRITE
--eval INSERT INTO t1 (a, data) VALUES (18, $data);
+--enable_query_log
--eval INSERT INTO t1 (a, data) VALUES (19, 's');
--eval INSERT INTO t2 (a, data) VALUES (20, 's');
--eval INSERT INTO t1 (a, data) VALUES (21, 's');
---enable_query_log
if (`SELECT @@binlog_format = 'STATEMENT' || @@binlog_format = 'MIXED'`)
{
- --disable_query_log
CREATE TABLE t4 SELECT * FROM t1;
- --enable_query_log
}
if (`SELECT @@binlog_format = 'ROW'`)
{
- --disable_query_log
--error ER_TRANS_CACHE_FULL, ER_STMT_CACHE_FULL, ER_ERROR_ON_WRITE
CREATE TABLE t4 SELECT * FROM t1;
- --enable_query_log
}
--disable_query_log
@@ -167,14 +162,12 @@ BEGIN;
--eval INSERT INTO t1 (a, data) VALUES (25, $data);
--error ER_TRANS_CACHE_FULL, ER_STMT_CACHE_FULL, ER_ERROR_ON_WRITE
--eval INSERT INTO t1 (a, data) VALUES (26, $data);
+--enable_query_log
--eval INSERT INTO t1 (a, data) VALUES (27, 's');
--eval INSERT INTO t2 (a, data) VALUES (28, 's');
--eval INSERT INTO t1 (a, data) VALUES (29, 's');
---enable_query_log
---disable_query_log
CREATE TABLE t5 (a int);
---enable_query_log
--sync_slave_with_master
--let $diff_tables= master:t1,slave:t1
@@ -311,10 +304,10 @@ SAVEPOINT sv;
--eval INSERT INTO t1 (a, data) VALUES (5, $data);
--error ER_TRANS_CACHE_FULL, ER_STMT_CACHE_FULL, ER_ERROR_ON_WRITE
--eval INSERT INTO t1 (a, data) VALUES (6, $data);
+--enable_query_log
--eval INSERT INTO t1 (a, data) VALUES (7, 's');
--eval INSERT INTO t2 (a, data) VALUES (8, 's');
--eval INSERT INTO t1 (a, data) VALUES (9, 's');
---enable_query_log
ROLLBACK TO sv;
COMMIT;
@@ -344,11 +337,11 @@ BEGIN;
--error ER_TRANS_CACHE_FULL, ER_STMT_CACHE_FULL, ER_ERROR_ON_WRITE
--eval INSERT INTO t1 (a, data) VALUES (7, $data);
--eval UPDATE t2 SET data= CONCAT($data, $data);
+--enable_query_log
--eval INSERT INTO t1 (a, data) VALUES (8, 's');
--eval INSERT INTO t1 (a, data) VALUES (9, 's');
--eval INSERT INTO t2 (a, data) VALUES (10, 's');
--eval INSERT INTO t1 (a, data) VALUES (11, 's');
---enable_query_log
COMMIT;
BEGIN;
diff --git a/mysql-test/extra/rpl_tests/rpl_flsh_tbls.test b/mysql-test/extra/rpl_tests/rpl_flsh_tbls.test
index 06253c5defb..ce062f424e1 100644
--- a/mysql-test/extra/rpl_tests/rpl_flsh_tbls.test
+++ b/mysql-test/extra/rpl_tests/rpl_flsh_tbls.test
@@ -8,7 +8,7 @@ source include/master-slave.inc;
let $SERVER_VERSION=`select version()`;
-create table t1 (a int) ENGINE=MyISAM;
+create table t1 (a int);
insert into t1 values (10);
create table t2 (a int) ENGINE=MyISAM;
create table t3 (a int) engine=merge union(t1);
diff --git a/mysql-test/include/default_client.cnf b/mysql-test/include/default_client.cnf
index 38f0d39127a..c9acd2d6b58 100644
--- a/mysql-test/include/default_client.cnf
+++ b/mysql-test/include/default_client.cnf
@@ -3,6 +3,9 @@
# when running tests - not to depend on the current machine localization.
#
+[client]
+plugin-dir=@OPT.plugindir
+
[mysql]
default-character-set=latin1
diff --git a/mysql-test/include/default_mysqld.cnf b/mysql-test/include/default_mysqld.cnf
index 614e50ca87b..8bbb1c15fa8 100644
--- a/mysql-test/include/default_mysqld.cnf
+++ b/mysql-test/include/default_mysqld.cnf
@@ -23,6 +23,8 @@ character-set-server= latin1
# disconnects when test servers are put under load see BUG#28359
connect-timeout= 60
+plugin-dir=@OPT.plugindir
+
log-bin-trust-function-creators=1
key_buffer_size= 1M
sort_buffer= 256K
diff --git a/mysql-test/include/index_merge_ror.inc b/mysql-test/include/index_merge_ror.inc
index 2764cbea468..fdb966e6885 100644
--- a/mysql-test/include/index_merge_ror.inc
+++ b/mysql-test/include/index_merge_ror.inc
@@ -63,7 +63,6 @@ create table t1
key(key3),
key(key4)
) ;
-
# Fill table
create table t0 as select * from t1;
--disable_query_log
diff --git a/mysql-test/lib/My/ConfigFactory.pm b/mysql-test/lib/My/ConfigFactory.pm
index e672b094405..90d2eaa0d76 100644
--- a/mysql-test/lib/My/ConfigFactory.pm
+++ b/mysql-test/lib/My/ConfigFactory.pm
@@ -645,6 +645,7 @@ sub new_config {
# add auto-options
$config->insert('OPT', 'port' => sub { fix_port($self, $config) });
$config->insert('OPT', 'vardir' => sub { $self->{ARGS}->{vardir} });
+ $config->insert('OPT', 'plugindir' => sub { $::plugindir });
{
# Run pre rules
diff --git a/mysql-test/lib/My/Test.pm b/mysql-test/lib/My/Test.pm
index f9eed945e41..5b202ea17a1 100644
--- a/mysql-test/lib/My/Test.pm
+++ b/mysql-test/lib/My/Test.pm
@@ -97,7 +97,7 @@ sub read_test {
chomp($serialized);
$serialized =~ s/\\([0-9a-fA-F]{2})/chr(hex($1))/eg;
my $test= Storable::thaw($serialized);
- die "wrong class (hack attempt?)"
+ die "wrong class (hack attempt?): ".ref($test)
unless ref($test) eq 'My::Test';
resfile_from_test($test) if $::opt_resfile;
return $test;
diff --git a/mysql-test/mysql-test-run.pl b/mysql-test/mysql-test-run.pl
index 459c070385b..ddf4e4bc5ee 100755
--- a/mysql-test/mysql-test-run.pl
+++ b/mysql-test/mysql-test-run.pl
@@ -281,8 +281,6 @@ my $opt_valgrind_mysqld= 0;
my $opt_valgrind_mysqltest= 0;
my @default_valgrind_args= ("--show-reachable=yes");
my @valgrind_args;
-our $opt_valgrind_mysqld= 0;
-my $opt_valgrind_mysqltest= 0;
my $opt_strace= 0;
my $opt_strace_client;
my @strace_args;
@@ -431,6 +429,7 @@ sub main {
template_path => "include/default_my.cnf",
master_opt => [],
slave_opt => [],
+ suite => 'main',
);
unshift(@$tests, $tinfo);
}
@@ -476,19 +475,6 @@ sub main {
print_global_resfile();
}
- # --------------------------------------------------------------------------
- # Read definitions from include/plugin.defs
- #
- read_plugin_defs("include/plugin.defs");
-
- # Also read from any plugin local plugin.defs
- for (glob "$basedir/plugin/*/tests/mtr/plugin.defs") {
- read_plugin_defs($_);
- }
-
- # Simplify reference to semisync plugins
- $ENV{'SEMISYNC_PLUGIN_OPT'}= $ENV{'SEMISYNC_MASTER_PLUGIN_OPT'};
-
# Create child processes
my %children;
for my $child_num (1..$opt_parallel){
@@ -586,8 +572,6 @@ sub main {
$opt_gcov_msg, $opt_gcov_err);
}
- mtr_report_stats($prefix, $fail, $completed, $extra_warnings);
-
if ($ctest_report) {
print "$ctest_report\n";
mtr_print_line();
@@ -595,7 +579,7 @@ sub main {
print_total_times($opt_parallel) if $opt_report_times;
- mtr_report_stats("Completed", $completed);
+ mtr_report_stats($prefix, $fail, $completed, $extra_warnings);
if ( @$completed != $num_tests)
{
@@ -811,6 +795,7 @@ sub run_test_server ($$$) {
# Test failure due to warnings, force is off
return ("Warnings in log", 1, $completed, $extra_warnings);
}
+ }
elsif ($line =~ /^SPENT/) {
add_total_times($line);
}
@@ -1652,17 +1637,14 @@ sub command_line_setup {
$opt_dbx || $opt_client_dbx || $opt_manual_dbx ||
$opt_debugger || $opt_client_debugger )
{
- # Indicate that we are using debugger
- $glob_debugger= 1;
- $opt_testcase_timeout= 60*60*24; # Don't abort debugging with timeout
- $opt_suite_timeout= $opt_testcase_timeout;
- $opt_retry= 1;
- $opt_retry_failure= 1;
-
if ( using_extern() )
{
mtr_error("Can't use --extern when using debugger");
}
+ # Indicate that we are using debugger
+ $glob_debugger= 1;
+ $opt_retry= 1;
+ $opt_retry_failure= 1;
# Set one week timeout (check-testcase timeout will be 1/10th)
$opt_testcase_timeout= 7 * 24 * 60;
$opt_suite_timeout= 7 * 24 * 60;
@@ -1681,8 +1663,8 @@ sub command_line_setup {
}
if ($opt_debug)
{
- $opt_testcase_timeout= 60*60*24; # Don't abort debugging with timeout
- $opt_suite_timeout= $opt_testcase_timeout;
+ $opt_testcase_timeout= 7 * 24 * 60;
+ $opt_suite_timeout= 7 * 24 * 60;
$opt_retry= 1;
$opt_retry_failure= 1;
}
@@ -2275,62 +2257,6 @@ sub find_plugin($$)
return $lib_plugin;
}
-#
-# Read plugin defintions file
-#
-
-sub read_plugin_defs($)
-{
- my ($defs_file)= @_;
- my $running_debug= 0;
-
- open(PLUGDEF, '<', $defs_file)
- or mtr_error("Can't read plugin defintions file $defs_file");
-
- # Need to check if we will be running mysqld-debug
- if ($opt_debug_server) {
- $running_debug= 1 if find_mysqld($basedir) =~ /mysqld-debug/;
- }
-
- while (<PLUGDEF>) {
- next if /^#/;
- my ($plug_file, $plug_loc, $plug_var, $plug_names)= split;
- # Allow empty lines
- next unless $plug_file;
- mtr_error("Lines in $defs_file must have 3 or 4 items") unless $plug_var;
-
- # If running debug server, plugins will be in 'debug' subdirectory
- $plug_file= "debug/$plug_file" if $running_debug;
-
- my ($plugin)= find_plugin($plug_file, $plug_loc);
-
- # Set env. variables that tests may use, set to empty if plugin
- # listed in def. file but not found.
-
- if ($plugin) {
- $ENV{$plug_var}= basename($plugin);
- $ENV{$plug_var.'_DIR'}= dirname($plugin);
- $ENV{$plug_var.'_OPT'}= "--plugin-dir=".dirname($plugin);
- if ($plug_names) {
- my $lib_name= basename($plugin);
- my $load_var= "--plugin_load=";
- my $semi= '';
- foreach my $plug_name (split (',', $plug_names)) {
- $load_var .= $semi . "$plug_name=$lib_name";
- $semi= ';';
- }
- $ENV{$plug_var.'_LOAD'}= $load_var;
- }
- } else {
- $ENV{$plug_var}= "";
- $ENV{$plug_var.'_DIR'}= "";
- $ENV{$plug_var.'_OPT'}= "";
- $ENV{$plug_var.'_LOAD'}= "" if $plug_names;
- }
- }
- close PLUGDEF;
-}
-
sub environment_setup {
umask(022);
@@ -2499,7 +2425,7 @@ sub environment_setup {
$ENV{'MYSQL'}= client_arguments("mysql");
$ENV{'MYSQL_SLAVE'}= client_arguments("mysql", ".2");
$ENV{'MYSQL_UPGRADE'}= client_arguments("mysql_upgrade");
- $ENV{'MYSQLADMIN'}= native_path($exe_mysqladmin);
+ $ENV{'MYSQLADMIN'}= client_arguments("mysqladmin");
$ENV{'MYSQL_CLIENT_TEST'}= mysql_client_test_arguments();
$ENV{'EXE_MYSQL'}= $exe_mysql;
@@ -2739,7 +2665,6 @@ sub setup_vardir() {
if ($source_dist)
{
$plugindir="$opt_vardir/plugins";
- unshift (@opt_extra_mysqld_opt, "--plugin-dir=$plugindir");
mkpath($plugindir);
if (IS_WINDOWS)
{
@@ -2765,6 +2690,7 @@ sub setup_vardir() {
}
else
{
+ $plugindir= $mysqld_variables{'plugin-dir'} || '.';
# hm, what paths work for debs and for rpms ?
for (<$basedir/lib/mysql/plugin/*.so>,
<$basedir/lib/plugin/*.dll>)
@@ -3097,7 +3023,7 @@ sub ndbd_stop {
# by sending "shutdown" to ndb_mgmd
}
-my $exe_ndbmtd_counter= 0;
+our $exe_ndbmtd_counter= 0;
sub ndbd_start {
my ($cluster, $ndbd)= @_;
@@ -4136,7 +4062,7 @@ sub all_servers {
}
# Storage for changed environment variables
-my %old_env;
+our %old_env;
sub resfile_report_test ($) {
my $tinfo= shift;
@@ -4598,7 +4524,7 @@ sub restore_error_log {
# Keep track of last position in mysqld error log where we scanned for
# warnings, so we can attribute any warnings found to the correct test
# suite or server restart.
-my $last_warning_position= { };
+our $last_warning_position= { };
# Called just before a mysqld server is started or a testcase is run,
# to keep track of which tests have been run since last restart, and
@@ -4796,7 +4722,7 @@ sub extract_warning_lines ($) {
qr|Table \./test/bug53592 has a primary key in InnoDB data dictionary, but not in MySQL|,
qr|mysqld: Table '\./mtr/test_suppressions' is marked as crashed and should be repaired|,
qr|InnoDB: Error: table 'test/bug39438'|,
- qr|'user' entry '.*' ignored in --skip-name-resolve mode|,
+ qr| entry '.*' ignored in --skip-name-resolve mode|,
qr|mysqld got signal 6|,
qr|Error while setting value 'pool-of-threads' to 'thread_handling'|,
);
@@ -5429,7 +5355,7 @@ sub mysqld_start ($$) {
{
ddd_arguments(\$args, \$exe, $mysqld->name());
}
- if ( $opt_dbx || $opt_manual_dbx ) {
+ elsif ( $opt_dbx || $opt_manual_dbx ) {
dbx_arguments(\$args, \$exe, $mysqld->name());
}
elsif ( $opt_debugger )
@@ -6604,7 +6530,7 @@ sub time_format($) {
sprintf '%d:%02d:%02d', $_[0]/3600, ($_[0]/60)%60, $_[0]%60;
}
-my $num_tests;
+our $num_tests;
sub xterm_stat {
if (-t STDOUT and defined $ENV{TERM} and $ENV{TERM} =~ /xterm/) {
diff --git a/mysql-test/r/bootstrap.result b/mysql-test/r/bootstrap.result
index 484724373d2..8bef6f90ab4 100644
--- a/mysql-test/r/bootstrap.result
+++ b/mysql-test/r/bootstrap.result
@@ -14,7 +14,7 @@ End of 5.1 tests
SHOW VARIABLES LIKE 'have_innodb';
Variable_name Value
have_innodb DISABLED
-SELECT SUPPORT FROM INFORMATION_SCHEMA.ENGINES WHERE engine='innodb';
-SUPPORT
-NO
+SELECT 'bug' as '' FROM INFORMATION_SCHEMA.ENGINES WHERE engine='innodb'
+ and SUPPORT='YES';
+
End of 5.5 tests
diff --git a/mysql-test/r/ctype_binary.result b/mysql-test/r/ctype_binary.result
index a9977311640..ed56be67c1a 100644
--- a/mysql-test/r/ctype_binary.result
+++ b/mysql-test/r/ctype_binary.result
@@ -2761,11 +2761,11 @@ KEY(date_column));
INSERT INTO t1 VALUES (1,'2010-09-01'),(2,'2010-10-01');
EXPLAIN SELECT * FROM t1 WHERE date_column BETWEEN '2010-09-01' AND '2010-10-01';
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range date_column date_column 4 NULL 1 Using where
+1 SIMPLE t1 range date_column date_column 4 NULL 1 Using index condition; Using MRR
ALTER TABLE t1 MODIFY date_column DATETIME DEFAULT NULL;
EXPLAIN SELECT * FROM t1 WHERE date_column BETWEEN '2010-09-01' AND '2010-10-01';
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range date_column date_column 9 NULL 1 Using where
+1 SIMPLE t1 range date_column date_column 9 NULL 1 Using index condition; Using MRR
DROP TABLE t1;
#
# Bug #31384 DATE_ADD() and DATE_SUB() return binary data
diff --git a/mysql-test/r/ctype_cp1251.result b/mysql-test/r/ctype_cp1251.result
index 53b45d60c0b..0ca13ecf846 100644
--- a/mysql-test/r/ctype_cp1251.result
+++ b/mysql-test/r/ctype_cp1251.result
@@ -3153,11 +3153,11 @@ KEY(date_column));
INSERT INTO t1 VALUES (1,'2010-09-01'),(2,'2010-10-01');
EXPLAIN SELECT * FROM t1 WHERE date_column BETWEEN '2010-09-01' AND '2010-10-01';
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range date_column date_column 4 NULL 1 Using where
+1 SIMPLE t1 range date_column date_column 4 NULL 1 Using index condition; Using MRR
ALTER TABLE t1 MODIFY date_column DATETIME DEFAULT NULL;
EXPLAIN SELECT * FROM t1 WHERE date_column BETWEEN '2010-09-01' AND '2010-10-01';
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range date_column date_column 9 NULL 1 Using where
+1 SIMPLE t1 range date_column date_column 9 NULL 1 Using index condition; Using MRR
DROP TABLE t1;
#
# Bug #31384 DATE_ADD() and DATE_SUB() return binary data
diff --git a/mysql-test/r/ctype_latin1.result b/mysql-test/r/ctype_latin1.result
index 61560bd25e6..3f8478dc5f0 100644
--- a/mysql-test/r/ctype_latin1.result
+++ b/mysql-test/r/ctype_latin1.result
@@ -3180,11 +3180,11 @@ KEY(date_column));
INSERT INTO t1 VALUES (1,'2010-09-01'),(2,'2010-10-01');
EXPLAIN SELECT * FROM t1 WHERE date_column BETWEEN '2010-09-01' AND '2010-10-01';
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range date_column date_column 4 NULL 1 Using where
+1 SIMPLE t1 range date_column date_column 4 NULL 1 Using index condition; Using MRR
ALTER TABLE t1 MODIFY date_column DATETIME DEFAULT NULL;
EXPLAIN SELECT * FROM t1 WHERE date_column BETWEEN '2010-09-01' AND '2010-10-01';
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range date_column date_column 9 NULL 1 Using where
+1 SIMPLE t1 range date_column date_column 9 NULL 1 Using index condition; Using MRR
DROP TABLE t1;
#
# Bug #31384 DATE_ADD() and DATE_SUB() return binary data
diff --git a/mysql-test/r/ctype_ucs.result b/mysql-test/r/ctype_ucs.result
index 2dad45e5639..5837bef4181 100644
--- a/mysql-test/r/ctype_ucs.result
+++ b/mysql-test/r/ctype_ucs.result
@@ -1285,7 +1285,7 @@ ch
ALTER TABLE t1 MODIFY a VARCHAR(10) CHARACTER SET ucs2 COLLATE ucs2_croatian_ci;
EXPLAIN SELECT * FROM t1 WHERE a LIKE 'd%';
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range a a 23 NULL 1 Using where; Using index
+1 SIMPLE t1 range a a 23 NULL 30 Using where; Using index
SELECT hex(concat('d',_ucs2 0x017E,'%'));
hex(concat('d',_ucs2 0x017E,'%'))
0064017E0025
diff --git a/mysql-test/r/ctype_utf8.result b/mysql-test/r/ctype_utf8.result
index 930917b3268..3c1d291e8d1 100644
--- a/mysql-test/r/ctype_utf8.result
+++ b/mysql-test/r/ctype_utf8.result
@@ -4895,11 +4895,11 @@ KEY(date_column));
INSERT INTO t1 VALUES (1,'2010-09-01'),(2,'2010-10-01');
EXPLAIN SELECT * FROM t1 WHERE date_column BETWEEN '2010-09-01' AND '2010-10-01';
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range date_column date_column 4 NULL 1 Using where
+1 SIMPLE t1 range date_column date_column 4 NULL 1 Using index condition; Using MRR
ALTER TABLE t1 MODIFY date_column DATETIME DEFAULT NULL;
EXPLAIN SELECT * FROM t1 WHERE date_column BETWEEN '2010-09-01' AND '2010-10-01';
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range date_column date_column 9 NULL 1 Using where
+1 SIMPLE t1 range date_column date_column 9 NULL 1 Using index condition; Using MRR
DROP TABLE t1;
#
# Bug #31384 DATE_ADD() and DATE_SUB() return binary data
diff --git a/mysql-test/r/func_math.result b/mysql-test/r/func_math.result
index cce6a4cbb3e..40eb6c5f543 100644
--- a/mysql-test/r/func_math.result
+++ b/mysql-test/r/func_math.result
@@ -684,7 +684,7 @@ SELECT ((@a:=@b:=1.0) div (@b:=@a:=get_format(datetime, 'usa')));
((@a:=@b:=1.0) div (@b:=@a:=get_format(datetime, 'usa')))
NULL
Warnings:
-Warning 1366 Incorrect decimal value: '' for column '' at row -1
+Warning 1366 Incorrect decimal value: '' for column '' at row 0
#
# Bug #59498 div function broken in mysql-trunk
#
diff --git a/mysql-test/r/grant.result b/mysql-test/r/grant.result
index a02c15c03fb..10caf4cd10f 100644
--- a/mysql-test/r/grant.result
+++ b/mysql-test/r/grant.result
@@ -54,7 +54,7 @@ max_updates 0
max_connections 0
max_user_connections 0
plugin
-authentication_string NULL
+authentication_string
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA'
@@ -125,7 +125,7 @@ max_updates 0
max_connections 0
max_user_connections 0
plugin
-authentication_string NULL
+authentication_string
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10
@@ -172,7 +172,7 @@ max_updates 20
max_connections 30
max_user_connections 0
plugin
-authentication_string NULL
+authentication_string
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10 MAX_UPDATES_PER_HOUR 20 MAX_CONNECTIONS_PER_HOUR 30
@@ -284,7 +284,7 @@ Warnings:
Warning 1364 Field 'ssl_cipher' doesn't have a default value
Warning 1364 Field 'x509_issuer' doesn't have a default value
Warning 1364 Field 'x509_subject' doesn't have a default value
-Warning 1364 Field 'auth_string' doesn't have a default value
+Warning 1364 Field 'authentication_string' doesn't have a default value
insert into mysql.db (host, db, user, select_priv) values
('localhost', 'a%', 'test11', 'Y'), ('localhost', 'ab%', 'test11', 'Y');
alter table mysql.db order by db asc;
diff --git a/mysql-test/r/grant2.result b/mysql-test/r/grant2.result
index a3323d51efb..b5e82794658 100644
--- a/mysql-test/r/grant2.result
+++ b/mysql-test/r/grant2.result
@@ -287,7 +287,7 @@ Warnings:
Warning 1364 Field 'ssl_cipher' doesn't have a default value
Warning 1364 Field 'x509_issuer' doesn't have a default value
Warning 1364 Field 'x509_subject' doesn't have a default value
-Warning 1364 Field 'auth_string' doesn't have a default value
+Warning 1364 Field 'authentication_string' doesn't have a default value
create user mysqltest_A@'%';
rename user mysqltest_B@'%' to mysqltest_C@'%';
drop user mysqltest_C@'%';
@@ -355,7 +355,7 @@ Warnings:
Warning 1364 Field 'ssl_cipher' doesn't have a default value
Warning 1364 Field 'x509_issuer' doesn't have a default value
Warning 1364 Field 'x509_subject' doesn't have a default value
-Warning 1364 Field 'auth_string' doesn't have a default value
+Warning 1364 Field 'authentication_string' doesn't have a default value
INSERT INTO mysql.db (host, db, user, select_priv) VALUES
('%','TESTDB','mysqltest_1','Y');
FLUSH PRIVILEGES;
diff --git a/mysql-test/r/group_by.result b/mysql-test/r/group_by.result
index 12080ddf5a8..bb1b3bab2c3 100644
--- a/mysql-test/r/group_by.result
+++ b/mysql-test/r/group_by.result
@@ -1899,8 +1899,8 @@ SELECT a, AVG(t1.b),
FROM t1 GROUP BY a;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t1 index NULL a 10 NULL 9 Using index
-3 DEPENDENT SUBQUERY t12 ref a a 10 func,func 2 Using where
-2 DEPENDENT SUBQUERY t11 ref a a 10 func,func 2 Using where
+3 DEPENDENT SUBQUERY t12 ref a a 10 func,func 2 Using index condition
+2 DEPENDENT SUBQUERY t11 ref a a 10 func,func 2 Using index condition
SELECT a, AVG(t1.b),
(SELECT t11.c FROM t1 t11 WHERE t11.a = t1.a AND t11.b = AVG(t1.b)) AS t11c,
(SELECT t12.c FROM t1 t12 WHERE t12.a = t1.a AND t12.b = AVG(t1.b)) AS t12c
diff --git a/mysql-test/r/index_merge_myisam.result b/mysql-test/r/index_merge_myisam.result
index 1caf9be8ac2..5e8c3ef5b48 100644
--- a/mysql-test/r/index_merge_myisam.result
+++ b/mysql-test/r/index_merge_myisam.result
@@ -943,7 +943,7 @@ count(*)
explain select count(*) from t1 where
key1a = 2 and key1b is null and key2a = 2 and key2b is null;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge i1,i2 i1,i2 10,10 NULL REF Using intersect(i1,i2); Using where; Using index
+1 SIMPLE t1 index_merge i1,i2 i1,i2 10,10 NULL 2 Using intersect(i1,i2); Using where; Using index
select count(*) from t1 where
key1a = 2 and key1b is null and key2a = 2 and key2b is null;
count(*)
@@ -951,7 +951,7 @@ count(*)
explain select count(*) from t1 where
key1a = 2 and key1b is null and key3a = 2 and key3b is null;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge i1,i3 i1,i3 10,10 NULL REF Using intersect(i1,i3); Using where; Using index
+1 SIMPLE t1 index_merge i1,i3 i1,i3 10,10 NULL 2 Using intersect(i1,i3); Using where; Using index
select count(*) from t1 where
key1a = 2 and key1b is null and key3a = 2 and key3b is null;
count(*)
diff --git a/mysql-test/r/join_outer.result b/mysql-test/r/join_outer.result
index 98735e9b05a..10d960deef5 100644
--- a/mysql-test/r/join_outer.result
+++ b/mysql-test/r/join_outer.result
@@ -262,11 +262,11 @@ SELECT DISTINCT fill,desc_larga_cat,cred_total,Grup,Places,PlacesOcupades FROM t
fill desc_larga_cat cred_total Grup Places PlacesOcupades
10360 asdfggfg 6.0 0 55 0
10360 asdfggfg 6.0 12 333 0
+10360 asdfggfg 6.0 32767 7 0
10360 asdfggfg 6.0 33 8 0
10360 asdfggfg 6.0 45 10 0
10360 asdfggfg 6.0 55 2 0
10360 asdfggfg 6.0 7887 85 0
-10360 asdfggfg 6.0 32767 7 0
10361 Components i Circuits Electronics I 6.0 30 2 0
10361 Components i Circuits Electronics I 6.0 40 3 0
10362 Laboratori d`Ordinadors 4.5 10 12 0
@@ -1621,9 +1621,9 @@ RIGHT JOIN h TABLE2 ON TABLE1.col_int_key=TABLE2.col_int_key
RIGHT JOIN m TABLE4 ON TABLE2.col_int_key=TABLE4.col_int_key;
pk
2
-4
2
4
+4
NULL
NULL
NULL
@@ -1644,6 +1644,7 @@ NULL
NULL
NULL
DROP TABLE h,m,k;
+#
# Bug#49600: outer join of two single-row tables with joining attributes
# evaluated to nulls
create table t1 (a int, b int);
diff --git a/mysql-test/r/join_outer_jcl6.result b/mysql-test/r/join_outer_jcl6.result
index b4a9bc7c4c2..1aff97ed4af 100644
--- a/mysql-test/r/join_outer_jcl6.result
+++ b/mysql-test/r/join_outer_jcl6.result
@@ -43,11 +43,11 @@ NULL NULL NULL 4 7 D 7
select t1.*,t2.* from t1 left join t2 using (a);
grp a c id a c d
1 1 a 1 1 a 1
+2 2 b NULL NULL NULL NULL
+2 3 c NULL NULL NULL NULL
3 4 E 3 4 A 4
3 5 C 3 5 B 5
3 6 D 3 6 C 6
-2 2 b NULL NULL NULL NULL
-2 3 c NULL NULL NULL NULL
NULL NULL NULL NULL NULL NULL
select t1.*,t2.* from t1 left join t2 using (a) where t1.a=t2.a;
grp a c id a c d
@@ -70,9 +70,9 @@ grp a c id a c d
1 1 a 3 4 A 4
2 2 b 3 5 B 5
2 3 c 3 6 C 6
+3 4 E NULL NULL NULL NULL
3 5 C 3 6 C 6
3 6 D 4 7 D 7
-3 4 E NULL NULL NULL NULL
NULL NULL NULL NULL NULL NULL
select t1.*,t2.* from t1 natural left outer join t2;
grp a c id a c d
@@ -103,11 +103,11 @@ id select_type table type possible_keys key key_len ref rows Extra
select t1.*,t2.*,t3.a from t1 left join t2 on (t1.a=t2.a) left join t1 as t3 on (t2.a=t3.a);
grp a c id a c d a
1 1 a 1 1 a 1 1
+2 2 b NULL NULL NULL NULL NULL
+2 3 c NULL NULL NULL NULL NULL
3 4 E 3 4 A 4 4
3 5 C 3 5 B 5 5
3 6 D 3 6 C 6 6
-2 2 b NULL NULL NULL NULL NULL
-2 3 c NULL NULL NULL NULL NULL
NULL NULL NULL NULL NULL NULL NULL
explain select t1.*,t2.*,t3.a from t1 left join t2 on (t3.a=t2.a) left join t1 as t3 on (t1.a=t3.a);
ERROR 42S22: Unknown column 't3.a' in 'on clause'
@@ -264,16 +264,16 @@ INSERT INTO t4 VALUES (2,-1,10361,1);
INSERT INTO t4 VALUES (3,-1,10362,1);
SELECT DISTINCT fill,desc_larga_cat,cred_total,Grup,Places,PlacesOcupades FROM t4 LEFT JOIN t3 ON t3.cod_asig=fill AND estat='S' AND dni_pasaporte='11111111' AND t3.idPla=1 , t2,t1 WHERE fill=t1.cod_asig AND Places>PlacesOcupades AND fill=idAssignatura AND t4.idPla=1 AND papa=-1;
fill desc_larga_cat cred_total Grup Places PlacesOcupades
+10360 asdfggfg 6.0 0 55 0
10360 asdfggfg 6.0 12 333 0
-10361 Components i Circuits Electronics I 6.0 30 2 0
-10361 Components i Circuits Electronics I 6.0 40 3 0
-10360 asdfggfg 6.0 45 10 0
-10362 Laboratori d`Ordinadors 4.5 10 12 0
-10360 asdfggfg 6.0 55 2 0
10360 asdfggfg 6.0 32767 7 0
10360 asdfggfg 6.0 33 8 0
+10360 asdfggfg 6.0 45 10 0
+10360 asdfggfg 6.0 55 2 0
10360 asdfggfg 6.0 7887 85 0
-10360 asdfggfg 6.0 0 55 0
+10361 Components i Circuits Electronics I 6.0 30 2 0
+10361 Components i Circuits Electronics I 6.0 40 3 0
+10362 Laboratori d`Ordinadors 4.5 10 12 0
10362 Laboratori d`Ordinadors 4.5 11 111 0
SELECT DISTINCT fill,t3.idPla FROM t4 LEFT JOIN t3 ON t3.cod_asig=t4.fill AND t3.estat='S' AND t3.dni_pasaporte='1234' AND t3.idPla=1 ;
fill idPla
@@ -308,8 +308,8 @@ select t1.name, t2.name, t2.id from t1 left join t2 on (t1.id = t2.owner);
name name id
Antonio Paz El Gato 1
Antonio Paz Perrito 2
-Thimble Smith Happy 3
Lilliana Angelovska NULL NULL
+Thimble Smith Happy 3
select t1.name, t2.name, t2.id from t1 left join t2 on (t1.id = t2.owner) where t2.id is null;
name name id
Lilliana Angelovska NULL NULL
@@ -328,8 +328,8 @@ select t1.name, t2.name, t2.id from t2 right join t1 on (t1.id = t2.owner);
name name id
Antonio Paz El Gato 1
Antonio Paz Perrito 2
-Thimble Smith Happy 3
Lilliana Angelovska NULL NULL
+Thimble Smith Happy 3
select t1.name, t2.name, t2.id from t2 right join t1 on (t1.id = t2.owner) where t2.id is null;
name name id
Lilliana Angelovska NULL NULL
@@ -348,20 +348,20 @@ select t1.name, t2.name, t2.id,t3.id from t2 right join t1 on (t1.id = t2.owner)
name name id id
Antonio Paz El Gato 1 1
Antonio Paz Perrito 2 1
-Thimble Smith Happy 3 3
Lilliana Angelovska NULL NULL NULL
+Thimble Smith Happy 3 3
select t1.name, t2.name, t2.id,t3.id from t1 right join t2 on (t1.id = t2.owner) right join t1 as t3 on t3.id=t2.owner;
name name id id
Antonio Paz El Gato 1 1
Antonio Paz Perrito 2 1
-Thimble Smith Happy 3 3
NULL NULL NULL 2
+Thimble Smith Happy 3 3
select t1.name, t2.name, t2.id, t2.owner, t3.id from t1 left join t2 on (t1.id = t2.owner) right join t1 as t3 on t3.id=t2.owner;
name name id owner id
Antonio Paz El Gato 1 1 1
Antonio Paz Perrito 2 1 1
-Thimble Smith Happy 3 3 3
NULL NULL NULL NULL 2
+Thimble Smith Happy 3 3 3
drop table t1,t2;
create table t1 (id int not null, str char(10), index(str));
insert into t1 values (1, null), (2, null), (3, "foo"), (4, "bar");
@@ -642,9 +642,9 @@ fooID barID fooID
30 3 30
select * from t2 left join t1 ignore index(primary) on t1.fooID = t2.fooID and t1.fooID = 30;
fooID barID fooID
-30 3 30
10 1 NULL
20 2 NULL
+30 3 30
drop table t1,t2;
create table t1 (i int);
create table t2 (i int);
@@ -654,21 +654,21 @@ insert into t2 values(2),(3);
insert into t3 values(2),(4);
select * from t1 natural left join t2 natural left join t3;
i
-2
1
+2
select * from t1 natural left join t2 where (t2.i is not null)=0;
i
1
select * from t1 natural left join t2 where (t2.i is not null) is not null;
i
-2
1
+2
select * from t1 natural left join t2 where (i is not null)=0;
i
select * from t1 natural left join t2 where (i is not null) is not null;
i
-2
1
+2
drop table t1,t2,t3;
create table t1 (f1 integer,f2 integer,f3 integer);
create table t2 (f2 integer,f4 integer);
@@ -1027,40 +1027,40 @@ a b a b
7 8 7 5
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE t2.b > t1.a OR t1.a > t1.b;
a b a b
+2 1 NULL NULL
3 2 3 0
4 3 4 1
6 5 6 4
-2 1 NULL NULL
8 7 NULL NULL
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE t1.a NOT BETWEEN t2.b AND t1.b;
a b a b
+2 1 NULL NULL
3 2 3 0
4 3 4 1
6 5 6 4
-2 1 NULL NULL
8 7 NULL NULL
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE NOT(t1.a BETWEEN t2.b AND t1.b);
a b a b
+2 1 NULL NULL
3 2 3 0
4 3 4 1
6 5 6 4
-2 1 NULL NULL
8 7 NULL NULL
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE t1.a = t2.a OR t2.b > t1.a OR t1.a > t1.b;
a b a b
+2 1 NULL NULL
3 2 3 0
4 3 4 1
6 5 6 4
7 8 7 5
-2 1 NULL NULL
8 7 NULL NULL
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE NOT(t1.a != t2.a AND t1.a BETWEEN t2.b AND t1.b);
a b a b
+2 1 NULL NULL
3 2 3 0
4 3 4 1
6 5 6 4
7 8 7 5
-2 1 NULL NULL
8 7 NULL NULL
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE t1.a = t2.a AND (t2.b > t1.a OR t1.a > t1.b);
a b a b
@@ -1173,33 +1173,33 @@ INSERT INTO t1 VALUES (1), (2), (3), (4);
INSERT INTO t2 VALUES (2), (3);
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.b WHERE (1=1);
a b
+1 NULL
2 2
3 3
-1 NULL
4 NULL
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.b WHERE (1 OR 1);
a b
+1 NULL
2 2
3 3
-1 NULL
4 NULL
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.b WHERE (0 OR 1);
a b
+1 NULL
2 2
3 3
-1 NULL
4 NULL
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.b WHERE (1=1 OR 2=2);
a b
+1 NULL
2 2
3 3
-1 NULL
4 NULL
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.b WHERE (1=1 OR 1=0);
a b
+1 NULL
2 2
3 3
-1 NULL
4 NULL
DROP TABLE t1,t2;
CREATE TABLE t1 (
@@ -1407,6 +1407,248 @@ Warnings:
Note 1003 select straight_join `test`.`jt1`.`f1` AS `f1` from `test`.`t1` `jt6` left join (`test`.`t1` `jt3` join `test`.`t1` `jt4` left join `test`.`t1` `jt5` on(1) left join `test`.`t1` `jt2` on(1)) on((`test`.`jt6`.`f1` and 1)) left join `test`.`t1` `jt1` on(1) where 1
DROP TABLE t1;
#
+# Bug#57688 Assertion `!table || (!table->write_set || bitmap_is_set(table->write_set, field
+#
+CREATE TABLE t1 (f1 INT NOT NULL, PRIMARY KEY (f1));
+CREATE TABLE t2 (f1 INT NOT NULL, f2 INT NOT NULL, PRIMARY KEY (f1, f2));
+INSERT INTO t1 VALUES (4);
+INSERT INTO t2 VALUES (3, 3);
+INSERT INTO t2 VALUES (7, 7);
+EXPLAIN SELECT * FROM t1 LEFT JOIN t2 ON t2.f1 = t1.f1
+WHERE t1.f1 = 4
+GROUP BY t2.f1, t2.f2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 system PRIMARY NULL NULL NULL 1 Using temporary; Using filesort
+1 SIMPLE t2 ref PRIMARY PRIMARY 4 const 1 Using index
+SELECT * FROM t1 LEFT JOIN t2 ON t2.f1 = t1.f1
+WHERE t1.f1 = 4
+GROUP BY t2.f1, t2.f2;
+f1 f1 f2
+4 NULL NULL
+EXPLAIN SELECT * FROM t1 LEFT JOIN t2 ON t2.f1 = t1.f1
+WHERE t1.f1 = 4 AND t2.f1 IS NOT NULL AND t2.f2 IS NOT NULL
+GROUP BY t2.f1, t2.f2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 system PRIMARY NULL NULL NULL 1 Using filesort
+1 SIMPLE t2 ref PRIMARY PRIMARY 4 const 1 Using where; Using index
+SELECT * FROM t1 LEFT JOIN t2 ON t2.f1 = t1.f1
+WHERE t1.f1 = 4 AND t2.f1 IS NOT NULL AND t2.f2 IS NOT NULL
+GROUP BY t2.f1, t2.f2;
+f1 f1 f2
+DROP TABLE t1,t2;
+#
+# Bug#57034 incorrect OUTER JOIN result when joined on unique key
+#
+CREATE TABLE t1 (pk INT PRIMARY KEY,
+col_int INT,
+col_int_unique INT UNIQUE KEY);
+INSERT INTO t1 VALUES (1,NULL,2), (2,0,0);
+CREATE TABLE t2 (pk INT PRIMARY KEY,
+col_int INT,
+col_int_unique INT UNIQUE KEY);
+INSERT INTO t2 VALUES (1,0,1), (2,0,2);
+EXPLAIN
+SELECT * FROM t1 LEFT JOIN t2
+ON t1.col_int_unique = t2.col_int_unique AND t1.col_int = t2.col_int
+WHERE t1.pk=1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 const PRIMARY PRIMARY 4 const 1
+1 SIMPLE t2 const col_int_unique col_int_unique 5 const 1
+SELECT * FROM t1 LEFT JOIN t2
+ON t1.col_int_unique = t2.col_int_unique AND t1.col_int = t2.col_int
+WHERE t1.pk=1;
+pk col_int col_int_unique pk col_int col_int_unique
+1 NULL 2 NULL NULL NULL
+DROP TABLE t1,t2;
+#
+# Bug#48046 Server incorrectly processing JOINs on NULL values
+#
+CREATE TABLE `BB` (
+`pk` int(11) NOT NULL AUTO_INCREMENT,
+`time_key` time DEFAULT NULL,
+`varchar_key` varchar(1) DEFAULT NULL,
+`varchar_nokey` varchar(1) DEFAULT NULL,
+PRIMARY KEY (`pk`),
+KEY `time_key` (`time_key`),
+KEY `varchar_key` (`varchar_key`)
+) ENGINE=MyISAM AUTO_INCREMENT=11 DEFAULT CHARSET=latin1;
+INSERT INTO `BB` VALUES (10,'18:27:58',NULL,NULL);
+SELECT table1.time_key AS field1, table2.pk
+FROM BB table1 LEFT JOIN BB table2
+ON table2.varchar_nokey = table1.varchar_key
+HAVING field1;
+field1 pk
+18:27:58 NULL
+DROP TABLE BB;
+#
+# Bug#49600 Server incorrectly processing RIGHT JOIN with
+# constant WHERE clause and no index
+#
+CREATE TABLE `BB` (
+`col_datetime_key` datetime DEFAULT NULL,
+`col_varchar_key` varchar(1) DEFAULT NULL,
+`col_varchar_nokey` varchar(1) DEFAULT NULL,
+KEY `col_datetime_key` (`col_datetime_key`),
+KEY `col_varchar_key` (`col_varchar_key`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+INSERT INTO `BB` VALUES ('1900-01-01 00:00:00',NULL,NULL);
+SELECT table1.col_datetime_key
+FROM BB table1 RIGHT JOIN BB table2
+ON table2 .col_varchar_nokey = table1.col_varchar_key
+WHERE 7;
+col_datetime_key
+NULL
+ALTER TABLE BB DISABLE KEYS;
+SELECT table1.col_datetime_key
+FROM BB table1 RIGHT JOIN BB table2
+ON table2 .col_varchar_nokey = table1.col_varchar_key
+WHERE 7;
+col_datetime_key
+NULL
+DROP TABLE BB;
+#
+# Bug#58490: Incorrect result in multi level OUTER JOIN
+# in combination with IS NULL
+#
+CREATE TABLE t1 (i INT NOT NULL);
+INSERT INTO t1 VALUES (0), (2),(3),(4);
+CREATE TABLE t2 (i INT NOT NULL);
+INSERT INTO t2 VALUES (0),(1), (3),(4);
+CREATE TABLE t3 (i INT NOT NULL);
+INSERT INTO t3 VALUES (0),(1),(2), (4);
+CREATE TABLE t4 (i INT NOT NULL);
+INSERT INTO t4 VALUES (0),(1),(2),(3) ;
+SELECT * FROM
+t1 LEFT JOIN
+( t2 LEFT JOIN
+( t3 LEFT JOIN
+t4
+ON t4.i = t3.i
+)
+ON t3.i = t2.i
+)
+ON t2.i = t1.i
+;
+i i i i
+0 0 0 0
+2 NULL NULL NULL
+3 3 NULL NULL
+4 4 4 NULL
+SELECT * FROM
+t1 LEFT JOIN
+( t2 LEFT JOIN
+( t3 LEFT JOIN
+t4
+ON t4.i = t3.i
+)
+ON t3.i = t2.i
+)
+ON t2.i = t1.i
+WHERE t4.i IS NULL;
+i i i i
+2 NULL NULL NULL
+3 3 NULL NULL
+4 4 4 NULL
+SELECT * FROM
+t1 LEFT JOIN
+( ( t2 LEFT JOIN
+t3
+ON t3.i = t2.i
+)
+)
+ON t2.i = t1.i
+WHERE t3.i IS NULL;
+i i i
+2 NULL NULL
+3 3 NULL
+SELECT * FROM
+t1 LEFT JOIN
+( ( t2 LEFT JOIN
+t3
+ON t3.i = t2.i
+)
+JOIN t4
+ON t4.i=t2.i
+)
+ON t2.i = t1.i
+WHERE t3.i IS NULL;
+i i i i
+2 NULL NULL NULL
+3 3 NULL 3
+4 NULL NULL NULL
+SELECT * FROM
+t1 LEFT JOIN
+( ( t2 LEFT JOIN
+t3
+ON t3.i = t2.i
+)
+JOIN (t4 AS t4a JOIN t4 AS t4b ON t4a.i=t4b.i)
+ON t4a.i=t2.i
+)
+ON t2.i = t1.i
+WHERE t3.i IS NULL;
+i i i i i
+2 NULL NULL NULL NULL
+3 3 NULL 3 3
+4 NULL NULL NULL NULL
+SELECT * FROM
+t1 LEFT JOIN
+( ( t2 LEFT JOIN
+t3
+ON t3.i = t2.i
+)
+JOIN (t4 AS t4a, t4 AS t4b)
+ON t4a.i=t2.i
+)
+ON t2.i = t1.i
+WHERE t3.i IS NULL;
+i i i i i
+2 NULL NULL NULL NULL
+3 3 NULL 3 0
+3 3 NULL 3 1
+3 3 NULL 3 2
+3 3 NULL 3 3
+4 NULL NULL NULL NULL
+DROP TABLE t1,t2,t3,t4;
+#
+# Bug#49322(Duplicate): Server is adding extra NULL row
+# on processing a WHERE clause
+#
+CREATE TABLE h (pk INT NOT NULL, col_int_key INT);
+INSERT INTO h VALUES (1,NULL),(4,2),(5,2),(3,4),(2,8);
+CREATE TABLE m (pk INT NOT NULL, col_int_key INT);
+INSERT INTO m VALUES (1,2),(2,7),(3,5),(4,7),(5,5),(6,NULL),(7,NULL),(8,9);
+CREATE TABLE k (pk INT NOT NULL, col_int_key INT);
+INSERT INTO k VALUES (1,9),(2,2),(3,5),(4,2),(5,7),(6,0),(7,5);
+SELECT TABLE1.pk FROM k TABLE1
+RIGHT JOIN h TABLE2 ON TABLE1.col_int_key=TABLE2.col_int_key
+RIGHT JOIN m TABLE4 ON TABLE2.col_int_key=TABLE4.col_int_key;
+pk
+2
+2
+4
+4
+NULL
+NULL
+NULL
+NULL
+NULL
+NULL
+NULL
+SELECT TABLE1.pk FROM k TABLE1
+RIGHT JOIN h TABLE2 ON TABLE1.col_int_key=TABLE2.col_int_key
+RIGHT JOIN m TABLE4 ON TABLE2.col_int_key=TABLE4.col_int_key
+WHERE TABLE1.pk IS NULL;
+pk
+NULL
+NULL
+NULL
+NULL
+NULL
+NULL
+NULL
+DROP TABLE h,m,k;
+#
# Bug#49600: outer join of two single-row tables with joining attributes
# evaluated to nulls
create table t1 (a int, b int);
diff --git a/mysql-test/r/kill.result b/mysql-test/r/kill.result
index 964f2947f6a..699c1fc4463 100644
--- a/mysql-test/r/kill.result
+++ b/mysql-test/r/kill.result
@@ -145,6 +145,7 @@ f2
0
SET DEBUG_SYNC = 'RESET';
DROP TABLE t1, t2;
+SET SESSION optimizer_search_depth=0;
SET DEBUG_SYNC= 'before_join_optimize SIGNAL in_sync';
PREPARE stmt FROM 'EXPLAIN SELECT * FROM t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20,t21,t22,t23,t24,t25,t26,t27,t28,t29,t30,t31,t32,t33,t34,t35,t36,t37,t38,t39,t40 WHERE a1=a2 AND a2=a3 AND a3=a4 AND a4=a5 AND a5=a6 AND a6=a7 AND a7=a8 AND a8=a9 AND a9=a10 AND a10=a11 AND a11=a12 AND a12=a13 AND a13=a14 AND a14=a15 AND a15=a16 AND a16=a17 AND a17=a18 AND a18=a19 AND a19=a20 AND a20=a21 AND a21=a22 AND a22=a23 AND a23=a24 AND a24=a25 AND a25=a26 AND a26=a27 AND a27=a28 AND a28=a29 AND a29=a30 AND a30=a31 AND a31=a32 AND a32=a33 AND a33=a34 AND a34=a35 AND a35=a36 AND a36=a37 AND a37=a38 AND a38=a39 AND a39=a40 ';
EXECUTE stmt;
diff --git a/mysql-test/r/myisam_mrr.result b/mysql-test/r/myisam_mrr.result
index 5db03db85ac..99e1a6b7292 100644
--- a/mysql-test/r/myisam_mrr.result
+++ b/mysql-test/r/myisam_mrr.result
@@ -347,7 +347,7 @@ GROUP BY t2.pk
);
id select_type table type possible_keys key key_len ref rows filtered Extra
1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
-2 SUBQUERY t2 ALL int_key int_key 5 3 33.33 Using index condition; Using filesort
+2 SUBQUERY t2 ref int_key int_key 5 1 100.00 Using index condition; Using where; Using filesort
Warnings:
Note 1003 select min(`test`.`t1`.`pk`) AS `MIN(t1.pk)` from `test`.`t1` where 0
DROP TABLE t1, t2;
diff --git a/mysql-test/r/mysqlcheck.result b/mysql-test/r/mysqlcheck.result
index f59942d609c..a24eccdc17b 100644
--- a/mysql-test/r/mysqlcheck.result
+++ b/mysql-test/r/mysqlcheck.result
@@ -298,8 +298,7 @@ CHECK TABLE bug47205 FOR UPGRADE;
Table Op Msg_type Msg_text
test.bug47205 check error Table upgrade required. Please do "REPAIR TABLE `bug47205`" or dump/reload to fix it!
# Running mysqlcheck to check and upgrade
-test.bug47205
-error : Table upgrade required. Please do "REPAIR TABLE `bug47205`" or dump/reload to fix it!
+test.bug47205 Needs upgrade
Repairing tables
test.bug47205 OK
diff --git a/mysql-test/r/mysqld--help-notwin.result b/mysql-test/r/mysqld--help-notwin.result
index 631829c30de..665d9ba1257 100644
--- a/mysql-test/r/mysqld--help-notwin.result
+++ b/mysql-test/r/mysqld--help-notwin.result
@@ -374,6 +374,8 @@ The following options may be given as the first argument:
Don't write queries to slow log that examine fewer rows
than that
--mrr-buffer-size=# Size of buffer to use when using MRR with range access
+ --multi-range-count=#
+ Ignored. Use mrr_buffer_size instead
--myisam-block-size=#
Block size to be used for MyISAM index pages
--myisam-data-pointer-size=#
@@ -907,6 +909,7 @@ max-write-lock-count 18446744073709551615
memlock FALSE
min-examined-row-limit 0
mrr-buffer-size 262144
+multi-range-count 256
myisam-block-size 1024
myisam-data-pointer-size 6
myisam-max-sort-file-size 9223372036853727232
diff --git a/mysql-test/r/openssl_1.result b/mysql-test/r/openssl_1.result
index 72bbaa71da5..439930b8fe4 100644
--- a/mysql-test/r/openssl_1.result
+++ b/mysql-test/r/openssl_1.result
@@ -189,7 +189,7 @@ UNLOCK TABLES;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
SSL error: Unable to get private key from 'MYSQL_TEST_DIR/std_data/client-cert.pem'
-mysqldump: Got error: 2026: SSL connection error: Unable to get private key when trying to connect
+mysqldump: Got error: 2026: "SSL connection error: Unable to get private key" when trying to connect
DROP TABLE t1;
Variable_name Value
Ssl_cipher DHE-RSA-AES256-SHA
diff --git a/mysql-test/r/plugin.result b/mysql-test/r/plugin.result
index 1529a0dfe95..73f1779badc 100644
--- a/mysql-test/r/plugin.result
+++ b/mysql-test/r/plugin.result
@@ -75,9 +75,9 @@ SET SQL_MODE='IGNORE_BAD_TABLE_OPTIONS';
#illegal value fixed
CREATE TABLE t1 (a int) ENGINE=example ULL=10000000000000000000 one_or_two='ttt' YESNO=SSS;
Warnings:
-Warning 1708 Incorrect value '10000000000000000000' for option 'ULL'
-Warning 1708 Incorrect value 'ttt' for option 'one_or_two'
-Warning 1708 Incorrect value 'SSS' for option 'YESNO'
+Warning 1723 Incorrect value '10000000000000000000' for option 'ULL'
+Warning 1723 Incorrect value 'ttt' for option 'one_or_two'
+Warning 1723 Incorrect value 'SSS' for option 'YESNO'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
diff --git a/mysql-test/r/plugin_auth.result b/mysql-test/r/plugin_auth.result
index 91a5d2d8478..5a22e47107f 100644
--- a/mysql-test/r/plugin_auth.result
+++ b/mysql-test/r/plugin_auth.result
@@ -44,7 +44,7 @@ ERROR 28000: Access denied for user 'plug'@'localhost' (using password: YES)
## test correct default plugin
select USER(),CURRENT_USER();
USER() CURRENT_USER()
-plug@localhost plug@%
+plug@localhost plug_dest@%
## test no_auto_create_user sql mode with plugin users
SET @@sql_mode=no_auto_create_user;
GRANT INSERT ON TEST.* TO grant_user IDENTIFIED WITH 'test_plugin_server';
@@ -72,13 +72,12 @@ DROP TABLE t1;
REVOKE ALL PRIVILEGES ON test_grant_db.* FROM new_grant_user;
# try re-create existing user via GRANT IDENTIFIED BY
GRANT ALL PRIVILEGES ON test_grant_db.* TO new_grant_user
-IDENTIFIED BY 'unused_password';
-# make sure password doesn't take precendence
+IDENTIFIED BY 'new_password';
+connect(localhost,new_grant_user,plug_dest,test,MYSQL_PORT,MYSQL_SOCK);
ERROR 28000: Access denied for user 'new_grant_user'@'localhost' (using password: YES)
-#make sure plugin auth still available
select USER(),CURRENT_USER();
USER() CURRENT_USER()
-new_grant_user@localhost plug_dest@%
+new_grant_user@localhost new_grant_user@%
USE test_grant_db;
CREATE TABLE t1 (a INT);
DROP TABLE t1;
@@ -86,10 +85,8 @@ DROP USER new_grant_user;
# try re-create existing user via GRANT IDENTIFIED WITH
GRANT ALL PRIVILEGES ON test_grant_db.* TO plug
IDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
-ERROR HY000: GRANT with IDENTIFIED WITH is illegal because the user plug already exists
GRANT ALL PRIVILEGES ON test_grant_db.* TO plug_dest
IDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
-ERROR HY000: GRANT with IDENTIFIED WITH is illegal because the user plug_dest already exists
REVOKE SELECT on test_grant_db.* FROM joro
INDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INDENTIFIED WITH 'test_plugin_server' AS 'plug_dest'' at line 2
@@ -152,12 +149,12 @@ GRANT PROXY ON future_user TO grant_plug;
in default connection
SHOW GRANTS FOR grant_plug;
Grants for grant_plug@%
-GRANT ALL PRIVILEGES ON *.* TO 'grant_plug'@'%' WITH GRANT OPTION
+GRANT ALL PRIVILEGES ON *.* TO 'grant_plug'@'%' IDENTIFIED VIA test_plugin_server USING 'grant_plug_dest' WITH GRANT OPTION
GRANT PROXY ON 'future_user'@'%' TO 'grant_plug'@'%'
REVOKE PROXY ON future_user FROM grant_plug;
SHOW GRANTS FOR grant_plug;
Grants for grant_plug@%
-GRANT ALL PRIVILEGES ON *.* TO 'grant_plug'@'%' WITH GRANT OPTION
+GRANT ALL PRIVILEGES ON *.* TO 'grant_plug'@'%' IDENTIFIED VIA test_plugin_server USING 'grant_plug_dest' WITH GRANT OPTION
## testing drop user
CREATE USER test_drop@localhost;
GRANT PROXY ON future_user TO test_drop@localhost;
@@ -286,31 +283,6 @@ REVOKE ALL PRIVILEGES ON *.* FROM u1@localhost, u2@localhost;
DROP USER u1@localhost,u2@localhost;
# test if FLUSH PRIVILEGES works without the proxies_priv table
FLUSH PRIVILEGES;
-mtr.global_suppressions OK
-mtr.test_suppressions OK
-mysql.columns_priv OK
-mysql.db OK
-mysql.event OK
-mysql.func OK
-mysql.general_log OK
-mysql.help_category OK
-mysql.help_keyword OK
-mysql.help_relation OK
-mysql.help_topic OK
-mysql.host OK
-mysql.ndb_binlog_index OK
-mysql.plugin OK
-mysql.proc OK
-mysql.procs_priv OK
-mysql.servers OK
-mysql.slow_log OK
-mysql.tables_priv OK
-mysql.time_zone OK
-mysql.time_zone_leap_second OK
-mysql.time_zone_name OK
-mysql.time_zone_transition OK
-mysql.time_zone_transition_type OK
-mysql.user OK
SELECT Host,User,Proxied_host,Proxied_user,With_grant FROM mysql.proxies_priv;
Host localhost
User root
@@ -390,6 +362,8 @@ VALUES (
'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y',
'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y',
/*!50001 'Y', 'Y', 'Y', 'Y', 'Y', */'', '', '', '', '0', '0', '0');
+Warnings:
+Warning 1364 Field 'authentication_string' doesn't have a default value
FLUSH PRIVILEGES;
DROP USER inserttest@localhost;
SELECT IS_NULLABLE, COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE
@@ -398,8 +372,8 @@ TABLE_NAME='user' AND
TABLE_SCHEMA='mysql'
ORDER BY COLUMN_NAME;
IS_NULLABLE COLUMN_NAME
-YES authentication_string
-YES plugin
+NO authentication_string
+NO plugin
#
# Bug #11936829: diff. between mysql.user (authentication_string)
# in fresh and upgraded 5.5.11
@@ -409,42 +383,16 @@ WHERE TABLE_SCHEMA= 'mysql' AND TABLE_NAME= 'user' AND
COLUMN_NAME IN ('plugin', 'authentication_string')
ORDER BY COLUMN_NAME;
IS_NULLABLE COLUMN_NAME
-YES authentication_string
-YES plugin
+NO authentication_string
+NO plugin
ALTER TABLE mysql.user MODIFY plugin char(64) DEFAULT '' NOT NULL;
ALTER TABLE mysql.user MODIFY authentication_string TEXT NOT NULL;
Run mysql_upgrade on a 5.5.10 external authentication column layout
-mtr.global_suppressions OK
-mtr.test_suppressions OK
-mysql.columns_priv OK
-mysql.db OK
-mysql.event OK
-mysql.func OK
-mysql.general_log OK
-mysql.help_category OK
-mysql.help_keyword OK
-mysql.help_relation OK
-mysql.help_topic OK
-mysql.host OK
-mysql.ndb_binlog_index OK
-mysql.plugin OK
-mysql.proc OK
-mysql.procs_priv OK
-mysql.proxies_priv OK
-mysql.servers OK
-mysql.slow_log OK
-mysql.tables_priv OK
-mysql.time_zone OK
-mysql.time_zone_leap_second OK
-mysql.time_zone_name OK
-mysql.time_zone_transition OK
-mysql.time_zone_transition_type OK
-mysql.user OK
SELECT IS_NULLABLE, COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA= 'mysql' AND TABLE_NAME= 'user' AND
COLUMN_NAME IN ('plugin', 'authentication_string')
ORDER BY COLUMN_NAME;
IS_NULLABLE COLUMN_NAME
-YES authentication_string
-YES plugin
+NO authentication_string
+NO plugin
End of 5.5 tests
diff --git a/mysql-test/r/plugin_auth_qa.result b/mysql-test/r/plugin_auth_qa.result
index d1128cf04ee..2bca2e74726 100644
--- a/mysql-test/r/plugin_auth_qa.result
+++ b/mysql-test/r/plugin_auth_qa.result
@@ -105,7 +105,7 @@ CREATE USER plug_dest IDENTIFIED BY 'plug_dest_passwd';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
plug test_plugin_server plug_dest
-plug_dest NULL
+plug_dest
DROP USER plug, plug_dest;
CREATE USER plug IDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
@@ -115,7 +115,7 @@ DROP USER plug;
CREATE USER plug_dest IDENTIFIED BY 'plug_dest_passwd';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-plug_dest NULL
+plug_dest
DROP USER plug_dest;
GRANT ALL PRIVILEGES ON test_user_db.* TO plug IDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
@@ -125,7 +125,7 @@ CREATE USER plug_dest IDENTIFIED BY 'plug_dest_passwd';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
plug test_plugin_server plug_dest
-plug_dest NULL
+plug_dest
DROP USER plug, plug_dest;
GRANT ALL PRIVILEGES ON test_user_db.* TO plug IDENTIFIED WITH test_plugin_server AS 'plug_dest';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
@@ -135,7 +135,7 @@ DROP USER plug;
CREATE USER plug_dest IDENTIFIED BY 'plug_dest_passwd';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-plug_dest NULL
+plug_dest
DROP USER plug_dest;
CREATE USER plug IDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
@@ -145,7 +145,7 @@ GRANT ALL PRIVILEGES ON test_user_db.* TO plug_dest IDENTIFIED BY 'plug_dest_pas
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
plug test_plugin_server plug_dest
-plug_dest NULL
+plug_dest
DROP USER plug, plug_dest;
CREATE USER plug IDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
@@ -155,13 +155,11 @@ DROP USER plug;
GRANT ALL PRIVILEGES ON test_user_db.* TO plug_dest IDENTIFIED BY 'plug_dest_passwd';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-plug_dest NULL
+plug_dest
DROP USER plug_dest;
CREATE USER plug IDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
GRANT ALL PRIVILEGES ON test_user_db.* TO plug IDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
-ERROR HY000: GRANT with IDENTIFIED WITH is illegal because the user plug already exists
GRANT ALL PRIVILEGES ON test_user_db.* TO plug IDENTIFIED WITH 'test_plugin_server';
-ERROR HY000: GRANT with IDENTIFIED WITH is illegal because the user plug already exists
DROP USER plug;
GRANT ALL PRIVILEGES ON test_user_db.* TO plug IDENTIFIED WITH test_plugin_server AS 'plug_dest';
CREATE USER plug IDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
@@ -176,7 +174,7 @@ plug test_plugin_server plug_dest
GRANT ALL PRIVILEGES ON test_user_db.* TO plug IDENTIFIED BY 'plug_dest_passwd';
SELECT user,plugin,authentication_string,password FROM mysql.user WHERE user != 'root';
user plugin authentication_string password
-plug test_plugin_server plug_dest *939AEE68989794C0F408277411C26055CDF41119
+plug *939AEE68989794C0F408277411C26055CDF41119
DROP USER plug;
GRANT ALL PRIVILEGES ON test_user_db.* TO plug IDENTIFIED WITH test_plugin_server AS 'plug_dest';
CREATE USER plug IDENTIFIED BY 'plug_dest_passwd';
@@ -210,7 +208,7 @@ DROP USER plüg;
CREATE USER plüg_dest IDENTIFIED BY 'plug_dest_passwd';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-plüg_dest NULL
+plüg_dest
DROP USER plüg_dest;
SET NAMES ascii;
CREATE USER 'plüg' IDENTIFIED WITH 'test_plugin_server' AS 'plüg_dest';
@@ -221,7 +219,7 @@ DROP USER 'plüg';
CREATE USER 'plüg_dest' IDENTIFIED BY 'plug_dest_passwd';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-pl??g_dest NULL
+pl??g_dest
DROP USER 'plüg_dest';
SET NAMES latin1;
========== test 1.1.1.5 ====================================
@@ -235,7 +233,7 @@ DROP USER 'plug';
CREATE USER 'plüg_dest' IDENTIFIED BY 'plug_dest_passwd';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-plüg_dest NULL
+plüg_dest
DROP USER 'plüg_dest';
SET NAMES utf8;
CREATE USER plüg IDENTIFIED WITH 'test_plügin_server' AS 'plüg_dest';
@@ -248,7 +246,7 @@ DROP USER 'plüg';
CREATE USER 'plüg_dest' IDENTIFIED BY 'plug_dest_passwd';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-plüg_dest NULL
+plüg_dest
DROP USER 'plüg_dest';
CREATE USER plüg IDENTIFIED WITH test_plugin_server AS 'plüg_dest';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
@@ -258,7 +256,7 @@ DROP USER plüg;
CREATE USER plüg_dest IDENTIFIED BY 'plug_dest_passwd';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-plüg_dest NULL
+plüg_dest
DROP USER plüg_dest;
========== test 1.1.1.2/1.1.2.2=============================
SET @auth_name= 'test_plugin_server';
@@ -278,7 +276,7 @@ DROP USER plug;
CREATE USER 'hh''s_plug_dest' IDENTIFIED BY 'plug_dest_passwd';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-hh's_plug_dest NULL
+hh's_plug_dest
DROP USER 'hh''s_plug_dest';
========== test 1.1.1.4 ====================================
CREATE USER plug IDENTIFIED WITH hh''s_test_plugin_server AS 'plug_dest';
@@ -294,7 +292,7 @@ GRANT ALL PRIVILEGES ON test_user_db.* TO plug_dest;
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
grant_user test_plugin_server plug_dest
-plug_dest NULL
+plug_dest
DROP USER grant_user,plug_dest;
set @save_sql_mode= @@sql_mode;
SET @@sql_mode=no_auto_create_user;
@@ -315,13 +313,13 @@ CREATE USER plug_dest IDENTIFIED BY 'plug_dest_passwd';
SELECT user,plugin,authentication_string,password FROM mysql.user WHERE user != 'root';
user plugin authentication_string password
grant_user test_plugin_server plug_dest
-plug_dest NULL *939AEE68989794C0F408277411C26055CDF41119
+plug_dest *939AEE68989794C0F408277411C26055CDF41119
DROP USER plug_dest;
GRANT ALL PRIVILEGES ON test_user_db.* TO plug_dest IDENTIFIED BY 'plug_user_passwd';
SELECT user,plugin,authentication_string,password FROM mysql.user WHERE user != 'root';
user plugin authentication_string password
grant_user test_plugin_server plug_dest
-plug_dest NULL *560881EB651416CEF77314D07D55EDCD5FC1BD6D
+plug_dest *560881EB651416CEF77314D07D55EDCD5FC1BD6D
DROP USER grant_user,plug_dest;
set @@sql_mode= @save_sql_mode;
DROP DATABASE test_user_db;
diff --git a/mysql-test/r/plugin_auth_qa_1.result b/mysql-test/r/plugin_auth_qa_1.result
index 51c7260d9ae..00ee47b56b3 100644
--- a/mysql-test/r/plugin_auth_qa_1.result
+++ b/mysql-test/r/plugin_auth_qa_1.result
@@ -20,7 +20,7 @@ GRANT ALL PRIVILEGES ON test_user_db.* TO plug_dest IDENTIFIED BY 'plug_dest_pas
GRANT PROXY ON plug_dest TO plug_user;
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-plug_dest NULL
+plug_dest
plug_user test_plugin_server plug_dest
1)
current_user()
@@ -73,7 +73,7 @@ GRANT PROXY ON new_dest TO plug_user;
ERROR 1045 (28000): Access denied for user 'plug_user'@'localhost' (using password: YES)
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-new_dest NULL
+new_dest
plug_user test_plugin_server plug_dest
DROP USER plug_user,new_dest;
CREATE USER plug_user
@@ -91,7 +91,7 @@ GRANT PROXY ON new_dest TO plug_user;
ERROR 1045 (28000): Access denied for user 'plug_user'@'localhost' (using password: YES)
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-new_dest NULL
+new_dest
plug_user test_plugin_server plug_dest
DROP USER plug_user,new_dest;
CREATE USER plug_user
@@ -113,13 +113,13 @@ connection default;
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
new_user test_plugin_server plug_dest
-plug_dest NULL
+plug_dest
disconnect plug_user;
UPDATE mysql.user SET user='plug_user' WHERE user='new_user';
FLUSH PRIVILEGES;
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-plug_dest NULL
+plug_dest
plug_user test_plugin_server plug_dest
DROP USER plug_dest,plug_user;
========== test 1.3 ========================================
@@ -135,26 +135,26 @@ connection default;
disconnect plug_user;
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-plug_dest NULL
+plug_dest
plug_user test_plugin_server plug_dest
UPDATE mysql.user SET user='new_user' WHERE user='plug_user';
FLUSH PRIVILEGES;
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
new_user test_plugin_server plug_dest
-plug_dest NULL
+plug_dest
UPDATE mysql.user SET authentication_string='new_dest' WHERE user='new_user';
FLUSH PRIVILEGES;
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
new_user test_plugin_server new_dest
-plug_dest NULL
+plug_dest
UPDATE mysql.user SET plugin='new_plugin_server' WHERE user='new_user';
FLUSH PRIVILEGES;
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
new_user new_plugin_server new_dest
-plug_dest NULL
+plug_dest
connect(plug_user,localhost,new_user,new_dest);
ERROR HY000: Plugin 'new_plugin_server' is not loaded
UPDATE mysql.user SET plugin='test_plugin_server' WHERE user='new_user';
@@ -163,7 +163,7 @@ FLUSH PRIVILEGES;
GRANT PROXY ON new_dest TO new_user;
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-new_dest NULL
+new_dest
new_user test_plugin_server new_dest
connect(plug_user,localhost,new_user,new_dest);
select USER(),CURRENT_USER();
@@ -176,9 +176,9 @@ FLUSH PRIVILEGES;
CREATE USER new_dest IDENTIFIED BY 'new_dest_passwd';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-new_dest NULL
+new_dest
new_user test_plugin_server new_dest
-plug_dest NULL
+plug_dest
GRANT ALL PRIVILEGES ON test.* TO new_user;
connect(plug_user,localhost,new_dest,new_dest_passwd);
select USER(),CURRENT_USER();
@@ -193,7 +193,7 @@ CREATE USER proxied_user IDENTIFIED BY 'proxied_user_passwd';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
test_plugin_server proxied_user
-proxied_user NULL
+proxied_user
connect(proxy_con,localhost,proxied_user,proxied_user_passwd);
SELECT USER(),CURRENT_USER();
USER() CURRENT_USER()
@@ -230,7 +230,7 @@ CREATE USER proxied_user IDENTIFIED BY 'proxied_user_passwd';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
test_plugin_server proxied_user
-proxied_user NULL
+proxied_user
connect(proxy_con,localhost,proxied_user,proxied_user_passwd);
SELECT USER(),CURRENT_USER();
USER() CURRENT_USER()
@@ -273,11 +273,11 @@ GRANT PROXY ON proxied_user_5 TO ''@'';
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
test_plugin_server proxied_user
-proxied_user_1 NULL
-proxied_user_2 NULL
-proxied_user_3 NULL
-proxied_user_4 NULL
-proxied_user_5 NULL
+proxied_user_1
+proxied_user_2
+proxied_user_3
+proxied_user_4
+proxied_user_5
connect(proxy_con_1,localhost,proxied_user_1,'proxied_user_1_pwd');
connect(proxy_con_2,localhost,proxied_user_2,proxied_user_2_pwd);
connect(proxy_con_3,localhost,proxied_user_3,proxied_user_3_pwd);
diff --git a/mysql-test/r/plugin_auth_qa_2.result b/mysql-test/r/plugin_auth_qa_2.result
index f4706e5aa0b..f300ea332cb 100644
--- a/mysql-test/r/plugin_auth_qa_2.result
+++ b/mysql-test/r/plugin_auth_qa_2.result
@@ -7,7 +7,7 @@ GRANT ALL PRIVILEGES ON test_user_db.* TO qa_test_1_dest identified by 'dest_pas
GRANT PROXY ON qa_test_1_dest TO qa_test_1_user;
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-qa_test_1_dest NULL
+qa_test_1_dest
qa_test_1_user qa_auth_interface qa_test_1_dest
SELECT @@proxy_user;
@@proxy_user
@@ -15,12 +15,12 @@ NULL
SELECT @@external_user;
@@external_user
NULL
-exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT -u qa_test_1_user --password=qa_test_1_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+exec MYSQL -h localhost -P MASTER_MYPORT -u qa_test_1_user --password=qa_test_1_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
current_user() user() @@local.proxy_user @@local.external_user
qa_test_1_user@% qa_test_1_user@localhost NULL NULL
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-qa_test_1_dest NULL
+qa_test_1_dest
qa_test_1_user qa_auth_interface qa_test_1_dest
DROP USER qa_test_1_user;
DROP USER qa_test_1_dest;
@@ -33,8 +33,8 @@ GRANT PROXY ON qa_test_2_dest TO qa_test_2_user;
GRANT PROXY ON authenticated_as TO qa_test_2_user;
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-authenticated_as NULL
-qa_test_2_dest NULL
+authenticated_as
+qa_test_2_dest
qa_test_2_user qa_auth_interface qa_test_2_dest
SELECT @@proxy_user;
@@proxy_user
@@ -42,13 +42,13 @@ NULL
SELECT @@external_user;
@@external_user
NULL
-exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT -u qa_test_2_user --password=qa_test_2_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+exec MYSQL -h localhost -P MASTER_MYPORT -u qa_test_2_user --password=qa_test_2_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
current_user() user() @@local.proxy_user @@local.external_user
authenticated_as@% user_name@localhost 'qa_test_2_user'@'%' 'qa_test_2_user'@'%'
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
user plugin authentication_string
-authenticated_as NULL
-qa_test_2_dest NULL
+authenticated_as
+qa_test_2_dest
qa_test_2_user qa_auth_interface qa_test_2_dest
DROP USER qa_test_2_user;
DROP USER qa_test_2_dest;
@@ -58,7 +58,7 @@ CREATE USER qa_test_3_user IDENTIFIED WITH qa_auth_interface AS 'qa_test_3_dest'
CREATE USER qa_test_3_dest IDENTIFIED BY 'dest_passwd';
GRANT ALL PRIVILEGES ON test_user_db.* TO qa_test_3_dest identified by 'dest_passwd';
GRANT PROXY ON qa_test_3_dest TO qa_test_3_user;
-exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT -u qa_test_3_user --password=qa_test_3_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+exec MYSQL -h localhost -P MASTER_MYPORT -u qa_test_3_user --password=qa_test_3_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
current_user() user() @@local.proxy_user @@local.external_user
qa_test_3_dest@% qa_test_3_user@localhost 'qa_test_3_user'@'%' 'qa_test_3_user'@'%'
DROP USER qa_test_3_user;
@@ -68,7 +68,7 @@ CREATE USER qa_test_4_user IDENTIFIED WITH qa_auth_interface AS 'qa_test_4_dest'
CREATE USER qa_test_4_dest IDENTIFIED BY 'dest_passwd';
GRANT ALL PRIVILEGES ON test_user_db.* TO qa_test_4_dest identified by 'dest_passwd';
GRANT PROXY ON qa_test_4_dest TO qa_test_4_user;
-exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT -u qa_test_4_user --password=qa_test_4_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+exec MYSQL -h localhost -P MASTER_MYPORT -u qa_test_4_user --password=qa_test_4_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
current_user() user() @@local.proxy_user @@local.external_user
qa_test_4_dest@% qa_test_4_user@localhost 'qa_test_4_user'@'%' 'qa_test_4_user'@'%'
DROP USER qa_test_4_user;
@@ -83,10 +83,10 @@ GRANT PROXY ON qa_test_5_dest TO qa_test_5_user;
GRANT PROXY ON qa_test_5_dest TO ''@'localhost';
SELECT user,plugin,authentication_string,password FROM mysql.user WHERE user != 'root';
user plugin authentication_string password
- NULL *DFCACE76914AD7BD801FC1A1ECF6562272621A22
-qa_test_5_dest NULL *DFCACE76914AD7BD801FC1A1ECF6562272621A22
+ *DFCACE76914AD7BD801FC1A1ECF6562272621A22
+qa_test_5_dest *DFCACE76914AD7BD801FC1A1ECF6562272621A22
qa_test_5_user qa_auth_interface qa_test_5_dest
-exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT --user=qa_test_5_user --password=qa_test_5_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+exec MYSQL -h localhost -P MASTER_MYPORT --user=qa_test_5_user --password=qa_test_5_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
ERROR 1045 (28000): Access denied for user 'qa_test_5_user'@'localhost' (using password: YES)
DROP USER qa_test_5_user;
DROP USER qa_test_5_dest;
@@ -98,37 +98,37 @@ GRANT ALL PRIVILEGES ON test_user_db.* TO qa_test_6_dest identified by 'dest_pas
GRANT PROXY ON qa_test_6_dest TO qa_test_6_user;
SELECT user,plugin,authentication_string,password FROM mysql.user;
user plugin authentication_string password
-qa_test_6_dest NULL *DFCACE76914AD7BD801FC1A1ECF6562272621A22
+qa_test_6_dest *DFCACE76914AD7BD801FC1A1ECF6562272621A22
qa_test_6_user qa_auth_interface qa_test_6_dest
root
root
root
root
-exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT --user=qa_test_6_user --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+exec MYSQL -h localhost -P MASTER_MYPORT --user=qa_test_6_user --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
ERROR 1045 (28000): Access denied for user 'qa_test_6_user'@'localhost' (using password: YES)
GRANT PROXY ON qa_test_6_dest TO root IDENTIFIED WITH qa_auth_interface AS 'qa_test_6_dest';
SELECT user,plugin,authentication_string,password FROM mysql.user;
user plugin authentication_string password
-qa_test_6_dest NULL *DFCACE76914AD7BD801FC1A1ECF6562272621A22
+qa_test_6_dest *DFCACE76914AD7BD801FC1A1ECF6562272621A22
qa_test_6_user qa_auth_interface qa_test_6_dest
root
root
root
root
root qa_auth_interface qa_test_6_dest
-exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT --user=root --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+exec MYSQL -h localhost -P MASTER_MYPORT --user=root --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
REVOKE PROXY ON qa_test_6_dest FROM root;
SELECT user,plugin,authentication_string FROM mysql.user;
user plugin authentication_string
-qa_test_6_dest NULL
+qa_test_6_dest
qa_test_6_user qa_auth_interface qa_test_6_dest
root
root
root
root
root qa_auth_interface qa_test_6_dest
-exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT --user=root --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+exec MYSQL -h localhost -P MASTER_MYPORT --user=root --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
DROP USER qa_test_6_user;
DROP USER qa_test_6_dest;
@@ -144,7 +144,7 @@ CREATE USER qa_test_11_user IDENTIFIED WITH qa_auth_interface AS 'qa_test_11_des
CREATE USER qa_test_11_dest IDENTIFIED BY 'dest_passwd';
GRANT ALL PRIVILEGES ON test_user_db.* TO qa_test_11_dest identified by 'dest_passwd';
GRANT PROXY ON qa_test_11_dest TO qa_test_11_user;
-exec MYSQL PLUGIN_AUTH_OPT --default_auth=qa_auth_client -h localhost -P MASTER_MYPORT -u qa_test_11_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+exec MYSQL --default_auth=qa_auth_client -h localhost -P MASTER_MYPORT -u qa_test_11_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
ERROR 1045 (28000): Access denied for user 'qa_test_11_user'@'localhost' (using password: YES)
DROP USER qa_test_11_user, qa_test_11_dest;
DROP DATABASE test_user_db;
diff --git a/mysql-test/r/plugin_auth_qa_3.result b/mysql-test/r/plugin_auth_qa_3.result
index d94d8879e7d..656975aca30 100644
--- a/mysql-test/r/plugin_auth_qa_3.result
+++ b/mysql-test/r/plugin_auth_qa_3.result
@@ -2,10 +2,10 @@ CREATE DATABASE test_user_db;
CREATE USER qa_test_11_user IDENTIFIED WITH qa_auth_server AS 'qa_test_11_dest';
GRANT ALL PRIVILEGES ON test_user_db.* TO qa_test_11_dest identified by 'dest_passwd';
GRANT PROXY ON qa_test_11_dest TO qa_test_11_user;
-exec MYSQL PLUGIN_AUTH_OPT --default_auth=qa_auth_client -h localhost -P MASTER_MYPORT -u qa_test_11_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+exec MYSQL --default_auth=qa_auth_client -h localhost -P MASTER_MYPORT -u qa_test_11_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
current_user() user() @@local.proxy_user @@local.external_user
qa_test_11_dest@% qa_test_11_user@localhost 'qa_test_11_user'@'%' 'qa_test_11_user'@'%'
-exec MYSQL PLUGIN_AUTH_OPT --default_auth=qa_auth_client -h localhost -P MASTER_MYPORT -u qa_test_2_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+exec MYSQL --default_auth=qa_auth_client -h localhost -P MASTER_MYPORT -u qa_test_2_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
ERROR 1045 (28000): Access denied for user 'qa_test_2_user'@'localhost' (using password: NO)
DROP USER qa_test_11_user, qa_test_11_dest;
DROP DATABASE test_user_db;
diff --git a/mysql-test/r/range.result b/mysql-test/r/range.result
index eff45844064..e63d2e5e89f 100644
--- a/mysql-test/r/range.result
+++ b/mysql-test/r/range.result
@@ -1689,7 +1689,7 @@ pk i4
EXPLAIN
SELECT * FROM t1 WHERE 10 BETWEEN 10 AND i4;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range i4_uq i4_uq 5 NULL 3 Using where
+1 SIMPLE t1 range i4_uq i4_uq 5 NULL 3 Using index condition; Using MRR
SELECT * FROM t1 WHERE 10 BETWEEN 10 AND i4;
pk i4
1 10
@@ -1698,7 +1698,7 @@ pk i4
EXPLAIN
SELECT * FROM t1 WHERE 10 BETWEEN i4 AND 10;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range i4_uq i4_uq 5 NULL 1 Using where
+1 SIMPLE t1 range i4_uq i4_uq 5 NULL 1 Using index condition; Using MRR
SELECT * FROM t1 WHERE 10 BETWEEN i4 AND 10;
pk i4
1 10
@@ -1732,7 +1732,7 @@ pk i4
EXPLAIN
SELECT * FROM t1 WHERE i4 BETWEEN 10 AND 99999999999999999;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range i4_uq i4_uq 5 NULL 2 Using where
+1 SIMPLE t1 range i4_uq i4_uq 5 NULL 2 Using index condition; Using MRR
SELECT * FROM t1 WHERE i4 BETWEEN 10 AND 99999999999999999;
pk i4
1 10
@@ -1747,7 +1747,7 @@ pk i4
EXPLAIN
SELECT * FROM t1 WHERE i4 BETWEEN 10 AND '20';
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range i4_uq i4_uq 5 NULL 1 Using where
+1 SIMPLE t1 range i4_uq i4_uq 5 NULL 1 Using index condition; Using MRR
SELECT * FROM t1 WHERE i4 BETWEEN 10 AND '20';
pk i4
1 10
@@ -1756,14 +1756,14 @@ EXPLAIN
SELECT * FROM t1, t1 as t2 WHERE t2.pk BETWEEN t1.i4 AND t1.i4;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL i4_uq NULL NULL NULL 3
-1 SIMPLE t2 eq_ref PRIMARY PRIMARY 4 test.t1.i4 1 Using where
+1 SIMPLE t2 eq_ref PRIMARY PRIMARY 4 test.t1.i4 1 Using index condition
SELECT * FROM t1, t1 as t2 WHERE t2.pk BETWEEN t1.i4 AND t1.i4;
pk i4 pk i4
EXPLAIN
SELECT * FROM t1, t1 as t2 WHERE t1.i4 BETWEEN t2.pk AND t2.pk;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL i4_uq NULL NULL NULL 3
-1 SIMPLE t2 eq_ref PRIMARY PRIMARY 4 test.t1.i4 1 Using where
+1 SIMPLE t2 eq_ref PRIMARY PRIMARY 4 test.t1.i4 1 Using index condition
SELECT * FROM t1, t1 as t2 WHERE t1.i4 BETWEEN t2.pk AND t2.pk;
pk i4 pk i4
DROP TABLE t1;
diff --git a/mysql-test/r/select.result b/mysql-test/r/select.result
index 49fea815b62..511714637ff 100644
--- a/mysql-test/r/select.result
+++ b/mysql-test/r/select.result
@@ -2258,20 +2258,20 @@ a
3
select * from (t1 as t2 left join t1 as t3 using (a)) right join t1 on t1.a>1;
a a
-NULL 1
1 2
-2 2
-3 2
1 3
+2 2
2 3
+3 2
3 3
+NULL 1
select * from t1 right join (t1 as t2 left join t1 as t3 using (a)) on t1.a>1;
a a
2 1
-3 1
2 2
-3 2
2 3
+3 1
+3 2
3 3
select * from (t1 as t2 left join t1 as t3 using (a)) right outer join t1 using ( a );
a
diff --git a/mysql-test/r/select_jcl6.result b/mysql-test/r/select_jcl6.result
index 1ae56bc33fe..ebe49f5ad97 100644
--- a/mysql-test/r/select_jcl6.result
+++ b/mysql-test/r/select_jcl6.result
@@ -2226,20 +2226,20 @@ a
select * from (t1 as t2 left join t1 as t3 using (a)) left outer join t1 on t1.a>1;
a a
1 2
-2 2
-3 2
1 3
+2 2
2 3
+3 2
3 3
select * from t1 left outer join (t1 as t2 left join t1 as t3 using (a)) on t1.a>1;
a a
+1 NULL
2 1
-3 1
2 2
-3 2
2 3
+3 1
+3 2
3 3
-1 NULL
select * from (t1 as t2 left join t1 as t3 using (a)) left join t1 using ( a );
a
1
@@ -2967,26 +2967,26 @@ create view v2 (c) as select a1 from t1;
select * from t1 natural left join t2;
a1 a2
1 1
-2 1
1 2
+2 1
2 2
select * from t1 natural right join t2;
a2 a1
1 1
-2 1
1 2
+2 1
2 2
select * from v2 natural left join t2;
c a2
1 1
-2 1
1 2
+2 1
2 2
select * from v2 natural right join t2;
a2 c
1 1
-2 1
1 2
+2 1
2 2
drop table t1, t2;
drop view v2;
@@ -3166,9 +3166,9 @@ id
102
select t1.id from t1 left join v3 using (id);
id
-102
100
101
+102
select * from t1 left join v2 using (id);
id
100
@@ -3181,9 +3181,9 @@ id
102
select * from t1 left join v3 using (id);
id
-102
100
101
+102
select v1.id from v1 left join v2 using (id);
id
100
@@ -3196,9 +3196,9 @@ id
102
select v1.id from v1 left join v3 using (id);
id
-102
100
101
+102
select * from v1 left join v2 using (id);
id
100
@@ -3211,9 +3211,9 @@ id
102
select * from v1 left join v3 using (id);
id
-102
100
101
+102
drop table t1, t2;
drop view v1, v2, v3;
create table t1 (id int(11) not null default '0');
@@ -4870,6 +4870,70 @@ SELECT 1 FROM t1 ORDER BY a COLLATE latin1_german2_ci;
1
1
DROP TABLE t1;
+#
+# Bug #58422: Incorrect result when OUTER JOIN'ing
+# with an empty table
+#
+CREATE TABLE t_empty(pk INT PRIMARY KEY, i INT) ENGINE = MYISAM;
+CREATE TABLE t1(pk INT PRIMARY KEY, i INT) ENGINE = MYISAM;
+INSERT INTO t1 VALUES (1,1), (2,2), (3,3);
+CREATE TABLE t2(pk INT PRIMARY KEY, i INT) ENGINE = MYISAM;
+INSERT INTO t2 VALUES (1,1), (2,2), (3,3);
+EXPLAIN
+SELECT *
+FROM
+t1
+LEFT OUTER JOIN
+(t2 INNER JOIN t_empty ON TRUE)
+ON t1.pk=t2.pk
+WHERE t2.pk <> 2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+SELECT *
+FROM
+t1
+LEFT OUTER JOIN
+(t2 INNER JOIN t_empty ON TRUE)
+ON t1.pk=t2.pk
+WHERE t2.pk <> 2;
+pk i pk i pk i
+EXPLAIN
+SELECT *
+FROM
+t1
+LEFT OUTER JOIN
+(t2 CROSS JOIN t_empty)
+ON t1.pk=t2.pk
+WHERE t2.pk <> 2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+SELECT *
+FROM
+t1
+LEFT OUTER JOIN
+(t2 CROSS JOIN t_empty)
+ON t1.pk=t2.pk
+WHERE t2.pk <> 2;
+pk i pk i pk i
+EXPLAIN
+SELECT *
+FROM
+t1
+LEFT OUTER JOIN
+(t2 INNER JOIN t_empty ON t_empty.i=t2.i)
+ON t1.pk=t2.pk
+WHERE t2.pk <> 2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+SELECT *
+FROM
+t1
+LEFT OUTER JOIN
+(t2 INNER JOIN t_empty ON t_empty.i=t2.i)
+ON t1.pk=t2.pk
+WHERE t2.pk <> 2;
+pk i pk i pk i
+DROP TABLE t1,t2,t_empty;
End of 5.1 tests
#
# Bug#54515: Crash in opt_range.cc::get_best_group_min_max on
@@ -4890,6 +4954,25 @@ col_int_key
DROP VIEW view_t1;
DROP TABLE t1;
# End of test BUG#54515
+#
+# Bug #57203 Assertion `field_length <= 255' failed.
+#
+SELECT coalesce((avg(distinct (geomfromtext("point(25379 -22010)")))))
+UNION ALL
+SELECT coalesce((avg(distinct (geomfromtext("point(25379 -22010)")))))
+AS foo
+;
+coalesce((avg(distinct (geomfromtext("point(25379 -22010)")))))
+0.0000
+0.0000
+CREATE table t1(a text);
+INSERT INTO t1 VALUES (''), ('');
+SELECT avg(distinct(t1.a)) FROM t1, t1 t2
+GROUP BY t2.a ORDER BY t1.a;
+avg(distinct(t1.a))
+0
+DROP TABLE t1;
+# End of test BUG#57203
set join_cache_level=default;
show variables like 'join_cache_level';
Variable_name Value
diff --git a/mysql-test/r/select_pkeycache.result b/mysql-test/r/select_pkeycache.result
index b5716264f56..511714637ff 100644
--- a/mysql-test/r/select_pkeycache.result
+++ b/mysql-test/r/select_pkeycache.result
@@ -2258,20 +2258,20 @@ a
3
select * from (t1 as t2 left join t1 as t3 using (a)) right join t1 on t1.a>1;
a a
-NULL 1
1 2
-2 2
-3 2
1 3
+2 2
2 3
+3 2
3 3
+NULL 1
select * from t1 right join (t1 as t2 left join t1 as t3 using (a)) on t1.a>1;
a a
2 1
-3 1
2 2
-3 2
2 3
+3 1
+3 2
3 3
select * from (t1 as t2 left join t1 as t3 using (a)) right outer join t1 using ( a );
a
@@ -4866,6 +4866,70 @@ SELECT 1 FROM t1 ORDER BY a COLLATE latin1_german2_ci;
1
1
DROP TABLE t1;
+#
+# Bug #58422: Incorrect result when OUTER JOIN'ing
+# with an empty table
+#
+CREATE TABLE t_empty(pk INT PRIMARY KEY, i INT) ENGINE = MYISAM;
+CREATE TABLE t1(pk INT PRIMARY KEY, i INT) ENGINE = MYISAM;
+INSERT INTO t1 VALUES (1,1), (2,2), (3,3);
+CREATE TABLE t2(pk INT PRIMARY KEY, i INT) ENGINE = MYISAM;
+INSERT INTO t2 VALUES (1,1), (2,2), (3,3);
+EXPLAIN
+SELECT *
+FROM
+t1
+LEFT OUTER JOIN
+(t2 INNER JOIN t_empty ON TRUE)
+ON t1.pk=t2.pk
+WHERE t2.pk <> 2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+SELECT *
+FROM
+t1
+LEFT OUTER JOIN
+(t2 INNER JOIN t_empty ON TRUE)
+ON t1.pk=t2.pk
+WHERE t2.pk <> 2;
+pk i pk i pk i
+EXPLAIN
+SELECT *
+FROM
+t1
+LEFT OUTER JOIN
+(t2 CROSS JOIN t_empty)
+ON t1.pk=t2.pk
+WHERE t2.pk <> 2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+SELECT *
+FROM
+t1
+LEFT OUTER JOIN
+(t2 CROSS JOIN t_empty)
+ON t1.pk=t2.pk
+WHERE t2.pk <> 2;
+pk i pk i pk i
+EXPLAIN
+SELECT *
+FROM
+t1
+LEFT OUTER JOIN
+(t2 INNER JOIN t_empty ON t_empty.i=t2.i)
+ON t1.pk=t2.pk
+WHERE t2.pk <> 2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
+SELECT *
+FROM
+t1
+LEFT OUTER JOIN
+(t2 INNER JOIN t_empty ON t_empty.i=t2.i)
+ON t1.pk=t2.pk
+WHERE t2.pk <> 2;
+pk i pk i pk i
+DROP TABLE t1,t2,t_empty;
End of 5.1 tests
#
# Bug#54515: Crash in opt_range.cc::get_best_group_min_max on
@@ -4886,3 +4950,22 @@ col_int_key
DROP VIEW view_t1;
DROP TABLE t1;
# End of test BUG#54515
+#
+# Bug #57203 Assertion `field_length <= 255' failed.
+#
+SELECT coalesce((avg(distinct (geomfromtext("point(25379 -22010)")))))
+UNION ALL
+SELECT coalesce((avg(distinct (geomfromtext("point(25379 -22010)")))))
+AS foo
+;
+coalesce((avg(distinct (geomfromtext("point(25379 -22010)")))))
+0.0000
+0.0000
+CREATE table t1(a text);
+INSERT INTO t1 VALUES (''), ('');
+SELECT avg(distinct(t1.a)) FROM t1, t1 t2
+GROUP BY t2.a ORDER BY t1.a;
+avg(distinct(t1.a))
+0
+DROP TABLE t1;
+# End of test BUG#57203
diff --git a/mysql-test/r/sp_notembedded.result b/mysql-test/r/sp_notembedded.result
index 58744a3be2d..c4f276774d5 100644
--- a/mysql-test/r/sp_notembedded.result
+++ b/mysql-test/r/sp_notembedded.result
@@ -198,7 +198,7 @@ VALUES('%', 'mysqltest_1', password(''), 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N', 'N',
'N', 'N', 'N', 'Y', 'Y', 'N', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', 'Y', 'Y', 'N', '',
'', '', '', '0', '0', '0', '0');
Warnings:
-Warning 1364 Field 'auth_string' doesn't have a default value
+Warning 1364 Field 'authentication_string' doesn't have a default value
FLUSH PRIVILEGES;
CREATE PROCEDURE p1(i INT) BEGIN END;
DROP PROCEDURE p1;
diff --git a/mysql-test/r/subselect3.result b/mysql-test/r/subselect3.result
index 15546f6c75c..4c344a446ea 100644
--- a/mysql-test/r/subselect3.result
+++ b/mysql-test/r/subselect3.result
@@ -882,9 +882,6 @@ Level Code Message
Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #2
Note 1276 Field or reference 'test.t1.c' of SELECT #3 was resolved in SELECT #2
Error 1054 Unknown column 'c' in 'field list'
-Note 1003 select `c` AS `c` from (select <expr_cache><count(`test`.`t1`.`a`),`test`.`t1`.`c`>((select count(`test`.`t1`.`a`) from dual group by `t1`.`c`)) AS `(SELECT COUNT(a) FROM
-(SELECT COUNT(b) FROM t1) AS x GROUP BY c
-)` from `test`.`t1` group by `test`.`t1`.`b`) `y`
DROP TABLE t1;
End of 5.0 tests
#
diff --git a/mysql-test/r/subselect3_jcl6.result b/mysql-test/r/subselect3_jcl6.result
index 0019a82f2dd..97e33ae49ea 100644
--- a/mysql-test/r/subselect3_jcl6.result
+++ b/mysql-test/r/subselect3_jcl6.result
@@ -886,9 +886,6 @@ Level Code Message
Note 1276 Field or reference 'test.t1.a' of SELECT #3 was resolved in SELECT #2
Note 1276 Field or reference 'test.t1.c' of SELECT #3 was resolved in SELECT #2
Error 1054 Unknown column 'c' in 'field list'
-Note 1003 select `c` AS `c` from (select <expr_cache><count(`test`.`t1`.`a`),`test`.`t1`.`c`>((select count(`test`.`t1`.`a`) from dual group by `t1`.`c`)) AS `(SELECT COUNT(a) FROM
-(SELECT COUNT(b) FROM t1) AS x GROUP BY c
-)` from `test`.`t1` group by `test`.`t1`.`b`) `y`
DROP TABLE t1;
End of 5.0 tests
#
diff --git a/mysql-test/r/subselect_no_mat.result b/mysql-test/r/subselect_no_mat.result
index bcde5a24fb9..9365223b1a6 100644
--- a/mysql-test/r/subselect_no_mat.result
+++ b/mysql-test/r/subselect_no_mat.result
@@ -5256,8 +5256,90 @@ ORDER BY (SELECT * FROM t1 WHERE MATCH(a) AGAINST ('+abc' IN BOOLEAN MODE));
SELECT * FROM t2 UNION SELECT * FROM t2
ORDER BY (SELECT * FROM t1 WHERE MATCH(a) AGAINST ('+abc' IN BOOLEAN MODE));
DROP TABLE t1,t2;
+#
+# Bug #58818: Incorrect result for IN/ANY subquery
+# with HAVING condition
+#
+CREATE TABLE t1(i INT);
+INSERT INTO t1 VALUES (1), (2), (3);
+CREATE TABLE t1s(i INT);
+INSERT INTO t1s VALUES (10), (20), (30);
+CREATE TABLE t2s(i INT);
+INSERT INTO t2s VALUES (100), (200), (300);
+SELECT * FROM t1
+WHERE t1.i NOT IN
+(
+SELECT STRAIGHT_JOIN t2s.i
+FROM
+t1s LEFT OUTER JOIN t2s ON t2s.i = t1s.i
+HAVING t2s.i = 999
+);
+i
+1
+2
+3
+SELECT * FROM t1
+WHERE t1.I IN
+(
+SELECT STRAIGHT_JOIN t2s.i
+FROM
+t1s LEFT OUTER JOIN t2s ON t2s.i = t1s.i
+HAVING t2s.i = 999
+) IS UNKNOWN;
+i
+SELECT * FROM t1
+WHERE NOT t1.I = ANY
+(
+SELECT STRAIGHT_JOIN t2s.i
+FROM
+t1s LEFT OUTER JOIN t2s ON t2s.i = t1s.i
+HAVING t2s.i = 999
+);
+i
+1
+2
+3
+SELECT * FROM t1
+WHERE t1.i = ANY (
+SELECT STRAIGHT_JOIN t2s.i
+FROM
+t1s LEFT OUTER JOIN t2s ON t2s.i = t1s.i
+HAVING t2s.i = 999
+) IS UNKNOWN;
+i
+DROP TABLE t1,t1s,t2s;
End of 5.1 tests
#
+# Bug #11765713 58705:
+# OPTIMIZER LET ENGINE DEPEND ON UNINITIALIZED VALUES
+# CREATED BY OPT_SUM_QUERY
+#
+CREATE TABLE t1(a INT NOT NULL, KEY (a));
+INSERT INTO t1 VALUES (0), (1);
+SELECT 1 as foo FROM t1 WHERE a < SOME
+(SELECT a FROM t1 WHERE a <=>
+(SELECT a FROM t1)
+);
+ERROR 21000: Subquery returns more than 1 row
+SELECT 1 as foo FROM t1 WHERE a < SOME
+(SELECT a FROM t1 WHERE a <=>
+(SELECT a FROM t1 where a is null)
+);
+foo
+DROP TABLE t1;
+#
+# Bug #57704: Cleanup code dies with void TABLE::set_keyread(bool):
+# Assertion `file' failed.
+#
+CREATE TABLE t1 (a INT);
+SELECT 1 FROM
+(SELECT ROW(
+(SELECT 1 FROM t1 RIGHT JOIN
+(SELECT 1 FROM t1, t1 t2) AS d ON 1),
+1) FROM t1) AS e;
+ERROR 21000: Operand should contain 1 column(s)
+DROP TABLE t1;
+#
# No BUG#, a case brought from 5.2's innodb_mysql_lock.test
#
create table t1 (i int not null primary key);
diff --git a/mysql-test/r/subselect_no_opts.result b/mysql-test/r/subselect_no_opts.result
index a8b4065d257..785e33a94b8 100644
--- a/mysql-test/r/subselect_no_opts.result
+++ b/mysql-test/r/subselect_no_opts.result
@@ -5253,8 +5253,90 @@ ORDER BY (SELECT * FROM t1 WHERE MATCH(a) AGAINST ('+abc' IN BOOLEAN MODE));
SELECT * FROM t2 UNION SELECT * FROM t2
ORDER BY (SELECT * FROM t1 WHERE MATCH(a) AGAINST ('+abc' IN BOOLEAN MODE));
DROP TABLE t1,t2;
+#
+# Bug #58818: Incorrect result for IN/ANY subquery
+# with HAVING condition
+#
+CREATE TABLE t1(i INT);
+INSERT INTO t1 VALUES (1), (2), (3);
+CREATE TABLE t1s(i INT);
+INSERT INTO t1s VALUES (10), (20), (30);
+CREATE TABLE t2s(i INT);
+INSERT INTO t2s VALUES (100), (200), (300);
+SELECT * FROM t1
+WHERE t1.i NOT IN
+(
+SELECT STRAIGHT_JOIN t2s.i
+FROM
+t1s LEFT OUTER JOIN t2s ON t2s.i = t1s.i
+HAVING t2s.i = 999
+);
+i
+1
+2
+3
+SELECT * FROM t1
+WHERE t1.I IN
+(
+SELECT STRAIGHT_JOIN t2s.i
+FROM
+t1s LEFT OUTER JOIN t2s ON t2s.i = t1s.i
+HAVING t2s.i = 999
+) IS UNKNOWN;
+i
+SELECT * FROM t1
+WHERE NOT t1.I = ANY
+(
+SELECT STRAIGHT_JOIN t2s.i
+FROM
+t1s LEFT OUTER JOIN t2s ON t2s.i = t1s.i
+HAVING t2s.i = 999
+);
+i
+1
+2
+3
+SELECT * FROM t1
+WHERE t1.i = ANY (
+SELECT STRAIGHT_JOIN t2s.i
+FROM
+t1s LEFT OUTER JOIN t2s ON t2s.i = t1s.i
+HAVING t2s.i = 999
+) IS UNKNOWN;
+i
+DROP TABLE t1,t1s,t2s;
End of 5.1 tests
#
+# Bug #11765713 58705:
+# OPTIMIZER LET ENGINE DEPEND ON UNINITIALIZED VALUES
+# CREATED BY OPT_SUM_QUERY
+#
+CREATE TABLE t1(a INT NOT NULL, KEY (a));
+INSERT INTO t1 VALUES (0), (1);
+SELECT 1 as foo FROM t1 WHERE a < SOME
+(SELECT a FROM t1 WHERE a <=>
+(SELECT a FROM t1)
+);
+ERROR 21000: Subquery returns more than 1 row
+SELECT 1 as foo FROM t1 WHERE a < SOME
+(SELECT a FROM t1 WHERE a <=>
+(SELECT a FROM t1 where a is null)
+);
+foo
+DROP TABLE t1;
+#
+# Bug #57704: Cleanup code dies with void TABLE::set_keyread(bool):
+# Assertion `file' failed.
+#
+CREATE TABLE t1 (a INT);
+SELECT 1 FROM
+(SELECT ROW(
+(SELECT 1 FROM t1 RIGHT JOIN
+(SELECT 1 FROM t1, t1 t2) AS d ON 1),
+1) FROM t1) AS e;
+ERROR 21000: Operand should contain 1 column(s)
+DROP TABLE t1;
+#
# No BUG#, a case brought from 5.2's innodb_mysql_lock.test
#
create table t1 (i int not null primary key);
diff --git a/mysql-test/r/subselect_no_semijoin.result b/mysql-test/r/subselect_no_semijoin.result
index 511fa140ca8..b53bb7918c8 100644
--- a/mysql-test/r/subselect_no_semijoin.result
+++ b/mysql-test/r/subselect_no_semijoin.result
@@ -5253,8 +5253,90 @@ ORDER BY (SELECT * FROM t1 WHERE MATCH(a) AGAINST ('+abc' IN BOOLEAN MODE));
SELECT * FROM t2 UNION SELECT * FROM t2
ORDER BY (SELECT * FROM t1 WHERE MATCH(a) AGAINST ('+abc' IN BOOLEAN MODE));
DROP TABLE t1,t2;
+#
+# Bug #58818: Incorrect result for IN/ANY subquery
+# with HAVING condition
+#
+CREATE TABLE t1(i INT);
+INSERT INTO t1 VALUES (1), (2), (3);
+CREATE TABLE t1s(i INT);
+INSERT INTO t1s VALUES (10), (20), (30);
+CREATE TABLE t2s(i INT);
+INSERT INTO t2s VALUES (100), (200), (300);
+SELECT * FROM t1
+WHERE t1.i NOT IN
+(
+SELECT STRAIGHT_JOIN t2s.i
+FROM
+t1s LEFT OUTER JOIN t2s ON t2s.i = t1s.i
+HAVING t2s.i = 999
+);
+i
+1
+2
+3
+SELECT * FROM t1
+WHERE t1.I IN
+(
+SELECT STRAIGHT_JOIN t2s.i
+FROM
+t1s LEFT OUTER JOIN t2s ON t2s.i = t1s.i
+HAVING t2s.i = 999
+) IS UNKNOWN;
+i
+SELECT * FROM t1
+WHERE NOT t1.I = ANY
+(
+SELECT STRAIGHT_JOIN t2s.i
+FROM
+t1s LEFT OUTER JOIN t2s ON t2s.i = t1s.i
+HAVING t2s.i = 999
+);
+i
+1
+2
+3
+SELECT * FROM t1
+WHERE t1.i = ANY (
+SELECT STRAIGHT_JOIN t2s.i
+FROM
+t1s LEFT OUTER JOIN t2s ON t2s.i = t1s.i
+HAVING t2s.i = 999
+) IS UNKNOWN;
+i
+DROP TABLE t1,t1s,t2s;
End of 5.1 tests
#
+# Bug #11765713 58705:
+# OPTIMIZER LET ENGINE DEPEND ON UNINITIALIZED VALUES
+# CREATED BY OPT_SUM_QUERY
+#
+CREATE TABLE t1(a INT NOT NULL, KEY (a));
+INSERT INTO t1 VALUES (0), (1);
+SELECT 1 as foo FROM t1 WHERE a < SOME
+(SELECT a FROM t1 WHERE a <=>
+(SELECT a FROM t1)
+);
+ERROR 21000: Subquery returns more than 1 row
+SELECT 1 as foo FROM t1 WHERE a < SOME
+(SELECT a FROM t1 WHERE a <=>
+(SELECT a FROM t1 where a is null)
+);
+foo
+DROP TABLE t1;
+#
+# Bug #57704: Cleanup code dies with void TABLE::set_keyread(bool):
+# Assertion `file' failed.
+#
+CREATE TABLE t1 (a INT);
+SELECT 1 FROM
+(SELECT ROW(
+(SELECT 1 FROM t1 RIGHT JOIN
+(SELECT 1 FROM t1, t1 t2) AS d ON 1),
+1) FROM t1) AS e;
+ERROR 21000: Operand should contain 1 column(s)
+DROP TABLE t1;
+#
# No BUG#, a case brought from 5.2's innodb_mysql_lock.test
#
create table t1 (i int not null primary key);
diff --git a/mysql-test/r/table_options.result b/mysql-test/r/table_options.result
index d0ebbeb0197..2d192193e84 100644
--- a/mysql-test/r/table_options.result
+++ b/mysql-test/r/table_options.result
@@ -3,9 +3,9 @@ SET @OLD_SQL_MODE=@@SQL_MODE;
SET SQL_MODE='IGNORE_BAD_TABLE_OPTIONS';
create table t1 (a int fkey=vvv, key akey (a) dff=vvv) tkey1='1v1';
Warnings:
-Warning 1707 Unknown option 'fkey'
-Warning 1707 Unknown option 'dff'
-Warning 1707 Unknown option 'tkey1'
+Warning 1722 Unknown option 'fkey'
+Warning 1722 Unknown option 'dff'
+Warning 1722 Unknown option 'tkey1'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@@ -16,10 +16,10 @@ drop table t1;
#reassiginig options in the same line
create table t1 (a int fkey=vvv, key akey (a) dff=vvv) tkey1=1v1 TKEY1=DEFAULT tkey1=1v2 tkey2=2v1;
Warnings:
-Warning 1707 Unknown option 'fkey'
-Warning 1707 Unknown option 'dff'
-Warning 1707 Unknown option 'tkey1'
-Warning 1707 Unknown option 'tkey2'
+Warning 1722 Unknown option 'fkey'
+Warning 1722 Unknown option 'dff'
+Warning 1722 Unknown option 'tkey1'
+Warning 1722 Unknown option 'tkey2'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@@ -29,7 +29,7 @@ t1 CREATE TABLE `t1` (
#add option
alter table t1 tkey4=4v1;
Warnings:
-Warning 1707 Unknown option 'tkey4'
+Warning 1722 Unknown option 'tkey4'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@@ -39,8 +39,8 @@ t1 CREATE TABLE `t1` (
#remove options
alter table t1 tkey3=DEFAULT tkey4=DEFAULT;
Warnings:
-Warning 1707 Unknown option 'tkey3'
-Warning 1707 Unknown option 'tkey4'
+Warning 1722 Unknown option 'tkey3'
+Warning 1722 Unknown option 'tkey4'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@@ -50,11 +50,11 @@ t1 CREATE TABLE `t1` (
drop table t1;
create table t1 (a int fkey1=v1, key akey (a) kkey1=v1) tkey1=1v1 tkey1=1v2 TKEY1=DEFAULT tkey2=2v1 tkey3=3v1;
Warnings:
-Warning 1707 Unknown option 'fkey1'
-Warning 1707 Unknown option 'kkey1'
-Warning 1707 Unknown option 'TKEY1'
-Warning 1707 Unknown option 'tkey2'
-Warning 1707 Unknown option 'tkey3'
+Warning 1722 Unknown option 'fkey1'
+Warning 1722 Unknown option 'kkey1'
+Warning 1722 Unknown option 'TKEY1'
+Warning 1722 Unknown option 'tkey2'
+Warning 1722 Unknown option 'tkey3'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@@ -64,7 +64,7 @@ t1 CREATE TABLE `t1` (
#change field with option with the same value
alter table t1 change a a int `FKEY1`='v1';
Warnings:
-Warning 1707 Unknown option 'FKEY1'
+Warning 1722 Unknown option 'FKEY1'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@@ -74,7 +74,7 @@ t1 CREATE TABLE `t1` (
#change field with option with a different value
alter table t1 change a a int fkey1=v2;
Warnings:
-Warning 1707 Unknown option 'fkey1'
+Warning 1722 Unknown option 'fkey1'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@@ -93,7 +93,7 @@ t1 CREATE TABLE `t1` (
#new key with options
alter table t1 add key bkey (b) kkey2=v1;
Warnings:
-Warning 1707 Unknown option 'kkey2'
+Warning 1722 Unknown option 'kkey2'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@@ -105,8 +105,8 @@ t1 CREATE TABLE `t1` (
#new column with options
alter table t1 add column c int fkey1=v1 fkey2=v2;
Warnings:
-Warning 1707 Unknown option 'fkey1'
-Warning 1707 Unknown option 'fkey2'
+Warning 1722 Unknown option 'fkey1'
+Warning 1722 Unknown option 'fkey2'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@@ -141,7 +141,7 @@ t1 CREATE TABLE `t1` (
#add column with options after delete
alter table t1 add column b int fkey2=v1;
Warnings:
-Warning 1707 Unknown option 'fkey2'
+Warning 1722 Unknown option 'fkey2'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@@ -154,7 +154,7 @@ t1 CREATE TABLE `t1` (
#add key
alter table t1 add key bkey (b) kkey2=v2;
Warnings:
-Warning 1707 Unknown option 'kkey2'
+Warning 1722 Unknown option 'kkey2'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
@@ -168,7 +168,7 @@ t1 CREATE TABLE `t1` (
drop table t1;
create table t1 (a int) tkey1=100;
Warnings:
-Warning 1707 Unknown option 'tkey1'
+Warning 1722 Unknown option 'tkey1'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
diff --git a/mysql-test/r/variables.result b/mysql-test/r/variables.result
index 29f477fcfd2..becd74093da 100644
--- a/mysql-test/r/variables.result
+++ b/mysql-test/r/variables.result
@@ -1542,6 +1542,7 @@ INSERT INTO t1 VALUES (0.2),(0.1);
SELECT 1 FROM t1 GROUP BY @a:= (SELECT ROUND(f1) FROM t1 WHERE @a=f1);
1
1
+1
DROP TABLE t1;
CREATE TABLE t1 AS SELECT @a:= CAST(1 AS UNSIGNED) AS a;
SHOW CREATE TABLE t1;
diff --git a/mysql-test/r/xa.result b/mysql-test/r/xa.result
index 7b580abb19f..3ec169016eb 100644
--- a/mysql-test/r/xa.result
+++ b/mysql-test/r/xa.result
@@ -206,8 +206,8 @@ DROP TABLE t1;
# FAILED
#
DROP TABLE IF EXISTS t1, t2;
-CREATE TABLE t1 (a INT);
-CREATE TABLE t2 (a INT);
+CREATE TABLE t1 (a INT) engine=innodb;
+CREATE TABLE t2 (a INT) engine=innodb;
START TRANSACTION;
INSERT INTO t1 VALUES (1);
# Connection con2
diff --git a/mysql-test/suite/binlog/t/binlog_database.test b/mysql-test/suite/binlog/t/binlog_database.test
index ee236b4e5ea..9c2a43575fc 100644
--- a/mysql-test/suite/binlog/t/binlog_database.test
+++ b/mysql-test/suite/binlog/t/binlog_database.test
@@ -2,6 +2,9 @@
# correctly. We test all three modes in the same file to avoid
# unecessary server restarts.
+--source include/have_innodb.inc
+--source include/have_binlog_format_statement.inc
+
set binlog_format=statement;
source extra/binlog_tests/database.test;
set binlog_format=mixed;
diff --git a/mysql-test/suite/binlog/t/binlog_spurious_ddl_errors-master.opt b/mysql-test/suite/binlog/t/binlog_spurious_ddl_errors-master.opt
index ffa981152ea..627becdbfb5 100644
--- a/mysql-test/suite/binlog/t/binlog_spurious_ddl_errors-master.opt
+++ b/mysql-test/suite/binlog/t/binlog_spurious_ddl_errors-master.opt
@@ -1 +1 @@
---innodb $EXAMPLE_PLUGIN_OPT
+--innodb
diff --git a/mysql-test/suite/binlog/t/binlog_unsafe-master.opt b/mysql-test/suite/binlog/t/binlog_unsafe-master.opt
index 78bcdd89270..50fc48d277b 100644
--- a/mysql-test/suite/binlog/t/binlog_unsafe-master.opt
+++ b/mysql-test/suite/binlog/t/binlog_unsafe-master.opt
@@ -1 +1 @@
-$UDF_EXAMPLE_LIB_OPT --log-output=file,table
+--log-output=file,table
diff --git a/mysql-test/suite/federated/federated_bug_35333.result b/mysql-test/suite/federated/federated_bug_35333.result
index ca7aa960b73..e1319cfeeae 100644
--- a/mysql-test/suite/federated/federated_bug_35333.result
+++ b/mysql-test/suite/federated/federated_bug_35333.result
@@ -10,35 +10,10 @@
# error that occurs during a query against I_S.TABLES.de
CREATE DATABASE federated;
CREATE DATABASE federated;
-CREATE DATABASE IF NOT EXISTS realdb;
-DROP TABLE IF EXISTS realdb.t0;
DROP TABLE IF EXISTS federated.t0;
#
-# Create the base table to be referenced
-#
-CREATE TABLE realdb.t0 (a text, b text) ENGINE=MYISAM;
-#
-# Create a federated table with a bogus port number
-#
-CREATE TABLE federated.t0 (a text, b text) ENGINE=FEDERATED
-CONNECTION='mysql://root@127.0.0.1:63333/realdb/t0';
-#
-# Trigger a federated system error during a INFORMATION_SCHEMA.TABLES query
-#
-SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_TYPE, ENGINE, ROW_FORMAT, TABLE_ROWS, DATA_LENGTH, TABLE_COMMENT
-FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'realdb' or TABLE_SCHEMA = 'federated';
-TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE ROW_FORMAT TABLE_ROWS DATA_LENGTH TABLE_COMMENT
-federated t0 BASE TABLE FEDERATED NULL 0 Unable to connect to foreign data source: Can't connect to MySQL server on '127.0.0.1' (socket errno)
-realdb t0 BASE TABLE MyISAM Dynamic 0 0
-Warnings:
-Warning 1429 Unable to connect to foreign data source: Can't connect to MySQL server on '127.0.0.1' (socket errno)
-SHOW WARNINGS;
-Level Code Message
-Warning 1429 Unable to connect to foreign data source: Can't connect to MySQL server on '127.0.0.1' (socket errno)
-#
# Create a MyISAM table then corrupt the file
#
-USE realdb;
CREATE TABLE t1 (c1 int) ENGINE=MYISAM;
#
# Corrupt the MyISAM table by deleting the base file
@@ -49,19 +24,18 @@ CREATE TABLE t1 (c1 int) ENGINE=MYISAM;
SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_TYPE, ENGINE, ROW_FORMAT, TABLE_ROWS, DATA_LENGTH, TABLE_COMMENT
FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1';
TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE ROW_FORMAT TABLE_ROWS DATA_LENGTH TABLE_COMMENT
-realdb t1 BASE TABLE NULL NULL NULL NULL Can't find file: 't1' (errno: 2)
+test t1 BASE TABLE NULL NULL NULL NULL Can't find file: 't1' (errno: 2)
Warnings:
Warning 1017 Can't find file: 't1' (errno: 2)
SHOW WARNINGS;
Level Code Message
Warning 1017 Can't find file: 't1' (errno: 2)
+DROP TABLE t1;
+ERROR 42S02: Unknown table 't1'
#
# Cleanup
#
-DROP TABLE IF EXISTS realdb.t0;
-DROP TABLE IF EXISTS federated.t0;
-DROP DATABASE realdb;
DROP TABLE IF EXISTS federated.t1;
-DROP DATABASE federated;
+DROP DATABASE IF EXISTS federated;
DROP TABLE IF EXISTS federated.t1;
-DROP DATABASE federated;
+DROP DATABASE IF EXISTS federated;
diff --git a/mysql-test/suite/federated/federated_bug_35333.test b/mysql-test/suite/federated/federated_bug_35333.test
index 58c217d24f2..8bce63c34e5 100644
--- a/mysql-test/suite/federated/federated_bug_35333.test
+++ b/mysql-test/suite/federated/federated_bug_35333.test
@@ -12,12 +12,13 @@
--source federated.inc
--disable_warnings
-CREATE DATABASE IF NOT EXISTS realdb;
# Federated database exists
-DROP TABLE IF EXISTS realdb.t0;
DROP TABLE IF EXISTS federated.t0;
--enable_warnings
+--disable_parsing
+# This test doesn't work with federatedx, as it doesn't allow wrong connections
+
--echo #
--echo # Create the base table to be referenced
--echo #
@@ -42,18 +43,20 @@ SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_TYPE, ENGINE, ROW_FORMAT, TABLE_ROWS, DAT
# Remove O/S-specific socket error
--replace_regex /\(.*\)/(socket errno)/
SHOW WARNINGS;
+DROP TABLE federated.t0;
+
+--enable_parsing
--echo #
--echo # Create a MyISAM table then corrupt the file
--echo #
-USE realdb;
CREATE TABLE t1 (c1 int) ENGINE=MYISAM;
--echo #
--echo # Corrupt the MyISAM table by deleting the base file
--echo #
let $MYSQLD_DATADIR= `SELECT @@datadir`;
---remove_file $MYSQLD_DATADIR/realdb/t1.MYD
---remove_file $MYSQLD_DATADIR/realdb/t1.MYI
+--remove_file $MYSQLD_DATADIR/test/t1.MYD
+--remove_file $MYSQLD_DATADIR/test/t1.MYI
--echo #
--echo # Trigger a MyISAM system error during an INFORMATION_SCHEMA.TABLES query
@@ -62,13 +65,13 @@ SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_TYPE, ENGINE, ROW_FORMAT, TABLE_ROWS, DAT
FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1';
SHOW WARNINGS;
+--disable_warnings
+--error 1051
+DROP TABLE t1;
+--enable_warnings
+
--echo #
--echo # Cleanup
--echo #
---disable_warnings
-DROP TABLE IF EXISTS realdb.t0;
-DROP TABLE IF EXISTS federated.t0;
-DROP DATABASE realdb;
---enable_warnings
--source federated_cleanup.inc
diff --git a/mysql-test/suite/federated/federated_debug.test b/mysql-test/suite/federated/federated_debug.test
index 2183def4610..381c00a5154 100644
--- a/mysql-test/suite/federated/federated_debug.test
+++ b/mysql-test/suite/federated/federated_debug.test
@@ -19,7 +19,7 @@ eval CREATE TABLE t1(a INT) ENGINE=FEDERATED
SELECT * FROM t1;
--echo # Start a asynchronous reload
---exec $MYSQLADMIN --no-defaults --default-character-set=latin1 -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= refresh 2>&1
+--exec $MYSQLADMIN --default-character-set=latin1 -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= refresh 2>&1
--echo # Wait for tables to be closed
let $show_statement= SHOW STATUS LIKE 'Open_tables';
diff --git a/mysql-test/suite/innodb/r/innodb-create-options.result b/mysql-test/suite/innodb/r/innodb-create-options.result
index aec9d731ce6..94c84fcf60f 100644
--- a/mysql-test/suite/innodb/r/innodb-create-options.result
+++ b/mysql-test/suite/innodb/r/innodb-create-options.result
@@ -80,26 +80,26 @@ SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=8
+t1 Compressed row_format=COMPRESSED key_block_size=8
ALTER TABLE t1 ADD COLUMN f1 INT;
SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=8
+t1 Compressed row_format=COMPRESSED key_block_size=8
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT ) ROW_FORMAT=DEFAULT KEY_BLOCK_SIZE=16;
SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed KEY_BLOCK_SIZE=16
+t1 Compressed key_block_size=16
ALTER TABLE t1 ADD COLUMN f1 INT;
SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed KEY_BLOCK_SIZE=16
+t1 Compressed key_block_size=16
# Test 3) StrictMode=ON, ALTER with each ROW_FORMAT & a valid non-zero KEY_BLOCK_SIZE
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT );
@@ -132,13 +132,13 @@ SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed KEY_BLOCK_SIZE=16
+t1 Compressed key_block_size=16
ALTER TABLE t1 ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1;
SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=1
+t1 Compressed row_format=COMPRESSED key_block_size=1
# Test 4) StrictMode=ON, CREATE with ROW_FORMAT=COMPACT, ALTER with a valid non-zero KEY_BLOCK_SIZE
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT ) ROW_FORMAT=COMPACT;
@@ -186,7 +186,7 @@ SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=16
+t1 Compressed row_format=COMPRESSED key_block_size=16
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT ) ROW_FORMAT=COMPACT;
ALTER TABLE t1 ROW_FORMAT=DEFAULT KEY_BLOCK_SIZE=1;
@@ -194,7 +194,7 @@ SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed KEY_BLOCK_SIZE=1
+t1 Compressed key_block_size=1
# Test 5) StrictMode=ON, CREATE with a valid KEY_BLOCK_SIZE
# ALTER with each ROW_FORMAT
DROP TABLE IF EXISTS t1;
@@ -234,7 +234,7 @@ SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=2
+t1 Compressed row_format=COMPRESSED key_block_size=2
ALTER TABLE t1 ROW_FORMAT=DEFAULT KEY_BLOCK_SIZE=0;
SHOW WARNINGS;
Level Code Message
@@ -495,7 +495,7 @@ Level Code Message
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=1 unless ROW_FORMAT=COMPRESSED.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compact row_format=COMPACT KEY_BLOCK_SIZE=1
+t1 Compact row_format=COMPACT key_block_size=1
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT ) ROW_FORMAT=REDUNDANT KEY_BLOCK_SIZE=2;
Warnings:
@@ -505,7 +505,7 @@ Level Code Message
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=2 unless ROW_FORMAT=COMPRESSED.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Redundant row_format=REDUNDANT KEY_BLOCK_SIZE=2
+t1 Redundant row_format=REDUNDANT key_block_size=2
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT ) ROW_FORMAT=DYNAMIC KEY_BLOCK_SIZE=4;
Warnings:
@@ -515,33 +515,33 @@ Level Code Message
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=4 unless ROW_FORMAT=COMPRESSED.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Dynamic row_format=DYNAMIC KEY_BLOCK_SIZE=4
+t1 Dynamic row_format=DYNAMIC key_block_size=4
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT ) ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;
SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=8
+t1 Compressed row_format=COMPRESSED key_block_size=8
ALTER TABLE t1 ADD COLUMN f1 INT;
SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=8
+t1 Compressed row_format=COMPRESSED key_block_size=8
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT ) ROW_FORMAT=DEFAULT KEY_BLOCK_SIZE=16;
SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed KEY_BLOCK_SIZE=16
+t1 Compressed key_block_size=16
ALTER TABLE t1 ADD COLUMN f1 INT;
SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed KEY_BLOCK_SIZE=16
+t1 Compressed key_block_size=16
# Test 11) StrictMode=OFF, ALTER with each ROW_FORMAT & a valid KEY_BLOCK_SIZE
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT );
@@ -555,7 +555,7 @@ Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=1 unless ROW_FORMAT=COMPRESSED.
Warning 1478 InnoDB: assuming ROW_FORMAT=COMPACT.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compact row_format=FIXED KEY_BLOCK_SIZE=1
+t1 Compact row_format=FIXED key_block_size=1
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT );
ALTER TABLE t1 ROW_FORMAT=COMPACT KEY_BLOCK_SIZE=2;
@@ -566,7 +566,7 @@ Level Code Message
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=2 unless ROW_FORMAT=COMPRESSED.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compact row_format=COMPACT KEY_BLOCK_SIZE=2
+t1 Compact row_format=COMPACT key_block_size=2
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT );
ALTER TABLE t1 ROW_FORMAT=DYNAMIC KEY_BLOCK_SIZE=4;
@@ -577,7 +577,7 @@ Level Code Message
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=4 unless ROW_FORMAT=COMPRESSED.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Dynamic row_format=DYNAMIC KEY_BLOCK_SIZE=4
+t1 Dynamic row_format=DYNAMIC key_block_size=4
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT );
ALTER TABLE t1 ROW_FORMAT=REDUNDANT KEY_BLOCK_SIZE=8;
@@ -588,7 +588,7 @@ Level Code Message
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=8 unless ROW_FORMAT=COMPRESSED.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Redundant row_format=REDUNDANT KEY_BLOCK_SIZE=8
+t1 Redundant row_format=REDUNDANT key_block_size=8
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT );
ALTER TABLE t1 ROW_FORMAT=DEFAULT KEY_BLOCK_SIZE=16;
@@ -596,13 +596,13 @@ SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed KEY_BLOCK_SIZE=16
+t1 Compressed key_block_size=16
ALTER TABLE t1 ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1;
SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=1
+t1 Compressed row_format=COMPRESSED key_block_size=1
# Test 12) StrictMode=OFF, CREATE with ROW_FORMAT=COMPACT, ALTER with a valid KEY_BLOCK_SIZE
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT ) ROW_FORMAT=COMPACT;
@@ -617,7 +617,7 @@ Level Code Message
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=2 unless ROW_FORMAT=COMPRESSED.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compact row_format=COMPACT KEY_BLOCK_SIZE=2
+t1 Compact row_format=COMPACT key_block_size=2
ALTER TABLE t1 ROW_FORMAT=REDUNDANT;
Warnings:
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=2 unless ROW_FORMAT=COMPRESSED.
@@ -626,7 +626,7 @@ Level Code Message
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=2 unless ROW_FORMAT=COMPRESSED.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Redundant row_format=REDUNDANT KEY_BLOCK_SIZE=2
+t1 Redundant row_format=REDUNDANT key_block_size=2
ALTER TABLE t1 ROW_FORMAT=DYNAMIC;
Warnings:
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=2 unless ROW_FORMAT=COMPRESSED.
@@ -635,19 +635,19 @@ Level Code Message
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=2 unless ROW_FORMAT=COMPRESSED.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Dynamic row_format=DYNAMIC KEY_BLOCK_SIZE=2
+t1 Dynamic row_format=DYNAMIC key_block_size=2
ALTER TABLE t1 ROW_FORMAT=COMPRESSED;
SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=2
+t1 Compressed row_format=COMPRESSED key_block_size=2
ALTER TABLE t1 KEY_BLOCK_SIZE=4;
SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=4
+t1 Compressed row_format=COMPRESSED key_block_size=4
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT ) ROW_FORMAT=COMPACT;
ALTER TABLE t1 ROW_FORMAT=DEFAULT KEY_BLOCK_SIZE=8;
@@ -655,7 +655,7 @@ SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed KEY_BLOCK_SIZE=8
+t1 Compressed key_block_size=8
# Test 13) StrictMode=OFF, CREATE with a valid KEY_BLOCK_SIZE
# ALTER with each ROW_FORMAT
DROP TABLE IF EXISTS t1;
@@ -684,7 +684,7 @@ Level Code Message
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=16 unless ROW_FORMAT=COMPRESSED.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compact row_format=COMPACT KEY_BLOCK_SIZE=16
+t1 Compact row_format=COMPACT key_block_size=16
ALTER TABLE t1 ROW_FORMAT=REDUNDANT;
Warnings:
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=16 unless ROW_FORMAT=COMPRESSED.
@@ -693,7 +693,7 @@ Level Code Message
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=16 unless ROW_FORMAT=COMPRESSED.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Redundant row_format=REDUNDANT KEY_BLOCK_SIZE=16
+t1 Redundant row_format=REDUNDANT key_block_size=16
ALTER TABLE t1 ROW_FORMAT=DYNAMIC;
Warnings:
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=16 unless ROW_FORMAT=COMPRESSED.
@@ -702,13 +702,13 @@ Level Code Message
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=16 unless ROW_FORMAT=COMPRESSED.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Dynamic row_format=DYNAMIC KEY_BLOCK_SIZE=16
+t1 Dynamic row_format=DYNAMIC key_block_size=16
ALTER TABLE t1 ROW_FORMAT=COMPRESSED;
SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=16
+t1 Compressed row_format=COMPRESSED key_block_size=16
ALTER TABLE t1 ROW_FORMAT=DEFAULT KEY_BLOCK_SIZE=0;
SHOW WARNINGS;
Level Code Message
@@ -731,7 +731,7 @@ Level Code Message
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=15.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compact KEY_BLOCK_SIZE=15
+t1 Compact key_block_size=15
# Test 15) StrictMode=OFF, Make sure ROW_FORMAT= COMPRESSED & DYNAMIC and a
valid KEY_BLOCK_SIZE are remembered but not used when ROW_FORMAT
is reverted to Antelope and then used again when ROW_FORMAT=Barracuda.
@@ -741,7 +741,7 @@ SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=1
+t1 Compressed row_format=COMPRESSED key_block_size=1
SET GLOBAL innodb_file_format=Antelope;
ALTER TABLE t1 ADD COLUMN f1 INT;
Warnings:
@@ -757,14 +757,14 @@ Warning 1478 InnoDB: ROW_FORMAT=COMPRESSED requires innodb_file_format > Antelop
Warning 1478 InnoDB: assuming ROW_FORMAT=COMPACT.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compact row_format=COMPRESSED KEY_BLOCK_SIZE=1
+t1 Compact row_format=COMPRESSED key_block_size=1
SET GLOBAL innodb_file_format=Barracuda;
ALTER TABLE t1 ADD COLUMN f2 INT;
SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=1
+t1 Compressed row_format=COMPRESSED key_block_size=1
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT ) ROW_FORMAT=DYNAMIC;
SHOW WARNINGS;
@@ -800,7 +800,7 @@ SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=2
+t1 Compressed row_format=COMPRESSED key_block_size=2
SET GLOBAL innodb_file_per_table=OFF;
ALTER TABLE t1 ADD COLUMN f1 INT;
Warnings:
@@ -816,14 +816,14 @@ Warning 1478 InnoDB: ROW_FORMAT=COMPRESSED requires innodb_file_per_table.
Warning 1478 InnoDB: assuming ROW_FORMAT=COMPACT.
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compact row_format=COMPRESSED KEY_BLOCK_SIZE=2
+t1 Compact row_format=COMPRESSED key_block_size=2
SET GLOBAL innodb_file_per_table=ON;
ALTER TABLE t1 ADD COLUMN f2 INT;
SHOW WARNINGS;
Level Code Message
SELECT TABLE_NAME,ROW_FORMAT,CREATE_OPTIONS FROM information_schema.tables WHERE TABLE_NAME = 't1';
TABLE_NAME ROW_FORMAT CREATE_OPTIONS
-t1 Compressed row_format=COMPRESSED KEY_BLOCK_SIZE=2
+t1 Compressed row_format=COMPRESSED key_block_size=2
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 ( i INT ) ROW_FORMAT=DYNAMIC;
SHOW WARNINGS;
diff --git a/mysql-test/suite/innodb/r/innodb-use-sys-malloc.result b/mysql-test/suite/innodb/r/innodb-use-sys-malloc.result
deleted file mode 100644
index 2ec4c7c8130..00000000000
--- a/mysql-test/suite/innodb/r/innodb-use-sys-malloc.result
+++ /dev/null
@@ -1,48 +0,0 @@
-SELECT @@GLOBAL.innodb_use_sys_malloc;
-@@GLOBAL.innodb_use_sys_malloc
-1
-1 Expected
-SET @@GLOBAL.innodb_use_sys_malloc=0;
-ERROR HY000: Variable 'innodb_use_sys_malloc' is a read only variable
-Expected error 'Read only variable'
-SELECT @@GLOBAL.innodb_use_sys_malloc;
-@@GLOBAL.innodb_use_sys_malloc
-1
-1 Expected
-drop table if exists t1;
-create table t1(a int not null) engine=innodb DEFAULT CHARSET=latin1;
-insert into t1 values (1),(2),(3),(4),(5),(6),(7);
-select * from t1;
-a
-1
-2
-3
-4
-5
-6
-7
-drop table t1;
-SELECT @@GLOBAL.innodb_use_sys_malloc;
-@@GLOBAL.innodb_use_sys_malloc
-1
-1 Expected
-SET @@GLOBAL.innodb_use_sys_malloc=0;
-ERROR HY000: Variable 'innodb_use_sys_malloc' is a read only variable
-Expected error 'Read only variable'
-SELECT @@GLOBAL.innodb_use_sys_malloc;
-@@GLOBAL.innodb_use_sys_malloc
-1
-1 Expected
-drop table if exists t1;
-create table t1(a int not null) engine=innodb DEFAULT CHARSET=latin1;
-insert into t1 values (1),(2),(3),(4),(5),(6),(7);
-select * from t1;
-a
-1
-2
-3
-4
-5
-6
-7
-drop table t1;
diff --git a/mysql-test/suite/innodb/r/innodb_index_large_prefix.result b/mysql-test/suite/innodb/r/innodb_index_large_prefix.result
index 6e2d3527ee9..b8f8fcfc749 100644
--- a/mysql-test/suite/innodb/r/innodb_index_large_prefix.result
+++ b/mysql-test/suite/innodb/r/innodb_index_large_prefix.result
@@ -37,7 +37,7 @@ select @@session.tx_isolation;
REPEATABLE-READ
explain select a1, a2 = repeat("a", 10000) from worklog5743 where a1 = 9;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE worklog5743 ref idx idx 5 const 1 Using where
+1 SIMPLE worklog5743 ref idx idx 5 const 1
select a1, a2 = repeat("a", 10000) from worklog5743 where a1 = 9;
a1 a2 = repeat("a", 10000)
9 1
@@ -60,7 +60,7 @@ select @@session.tx_isolation;
REPEATABLE-READ
explain select a1, a2 = repeat("a", 10000) from worklog5743 where a1 = 9;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE worklog5743 ref idx idx 5 const 1 Using where
+1 SIMPLE worklog5743 ref idx idx 5 const 1
select a1, a2 = repeat("a", 10000) from worklog5743 where a1 = 9;
a1 a2 = repeat("a", 10000)
9 1
@@ -92,7 +92,7 @@ select @@session.tx_isolation;
REPEATABLE-READ
explain select a1, a2 = repeat("a", 10000) from worklog5743_2 where a1 = 9;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE worklog5743_2 ref idx1 idx1 5 const 1 Using where
+1 SIMPLE worklog5743_2 ref idx1 idx1 5 const 1
select a1, a2 = repeat("a", 10000) from worklog5743_2 where a1 = 9;
a1 a2 = repeat("a", 10000)
9 1
@@ -121,7 +121,7 @@ select @@session.tx_isolation;
REPEATABLE-READ
explain select a1 from worklog5743 where a1 = 9;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE worklog5743 ref idx idx 5 const 1 Using where; Using index
+1 SIMPLE worklog5743 ref idx idx 5 const 1 Using index
select a1 from worklog5743 where a1 = 9;
a1
9
diff --git a/mysql-test/suite/innodb/t/innodb-use-sys-malloc-master.opt b/mysql-test/suite/innodb/t/innodb-use-sys-malloc-master.opt
deleted file mode 100644
index 41ac793df88..00000000000
--- a/mysql-test/suite/innodb/t/innodb-use-sys-malloc-master.opt
+++ /dev/null
@@ -1,2 +0,0 @@
---default-storage-engine=MyISAM
---loose-innodb-use-sys-malloc=true
diff --git a/mysql-test/suite/innodb/t/innodb-use-sys-malloc.test b/mysql-test/suite/innodb/t/innodb-use-sys-malloc.test
deleted file mode 100644
index c485755378c..00000000000
--- a/mysql-test/suite/innodb/t/innodb-use-sys-malloc.test
+++ /dev/null
@@ -1,27 +0,0 @@
-# XtraDB has lots of "still reachable" memory leak warnings at shutdown when
-# --innodb-use-sys-malloc
---source include/not_valgrind.inc
-
-#display current value of innodb_use_sys_malloc
-SELECT @@GLOBAL.innodb_use_sys_malloc;
---echo 1 Expected
-
-#try changing it. Should fail.
---error ER_INCORRECT_GLOBAL_LOCAL_VAR
-SET @@GLOBAL.innodb_use_sys_malloc=0;
---echo Expected error 'Read only variable'
-
-SELECT @@GLOBAL.innodb_use_sys_malloc;
---echo 1 Expected
-
-
-#do some stuff to see if it works.
---disable_warnings
-drop table if exists t1;
---enable_warnings
-
-create table t1(a int not null) engine=innodb DEFAULT CHARSET=latin1;
-insert into t1 values (1),(2),(3),(4),(5),(6),(7);
-select * from t1;
-drop table t1;
-
diff --git a/mysql-test/suite/parts/r/partition_auto_increment_maria.result b/mysql-test/suite/parts/r/partition_auto_increment_maria.result
index 757eaca3a60..b9310a2a314 100644
--- a/mysql-test/suite/parts/r/partition_auto_increment_maria.result
+++ b/mysql-test/suite/parts/r/partition_auto_increment_maria.result
@@ -136,6 +136,42 @@ t1 CREATE TABLE `t1` (
PRIMARY KEY (`c1`)
) ENGINE=Aria AUTO_INCREMENT=102 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
DROP TABLE t1;
+CREATE TABLE t1
+(a INT NULL AUTO_INCREMENT,
+UNIQUE KEY (a))
+ENGINE='Aria';
+SET LAST_INSERT_ID = 999;
+SET INSERT_ID = 0;
+INSERT INTO t1 SET a = 1 ON DUPLICATE KEY UPDATE a = NULL;
+SELECT LAST_INSERT_ID();
+LAST_INSERT_ID()
+999
+SELECT * FROM t1;
+a
+1
+INSERT INTO t1 SET a = 1 ON DUPLICATE KEY UPDATE a = NULL;
+SELECT LAST_INSERT_ID();
+LAST_INSERT_ID()
+999
+SELECT * FROM t1;
+a
+0
+UPDATE t1 SET a = 1 WHERE a IS NULL;
+SELECT LAST_INSERT_ID();
+LAST_INSERT_ID()
+999
+SELECT * FROM t1;
+a
+0
+UPDATE t1 SET a = NULL WHERE a = 1;
+SELECT LAST_INSERT_ID();
+LAST_INSERT_ID()
+999
+SELECT * FROM t1;
+a
+0
+DROP TABLE t1;
+SET INSERT_ID = 1;
# Simple test with NULL
CREATE TABLE t1 (
c1 INT NOT NULL AUTO_INCREMENT,
@@ -1070,4 +1106,40 @@ c1 c2
2 20
127 40
DROP TABLE t;
+CREATE TABLE t1
+(a INT NULL AUTO_INCREMENT,
+UNIQUE KEY (a))
+ENGINE='Aria'
+PARTITION BY KEY(a) PARTITIONS 2;
+SET LAST_INSERT_ID = 999;
+SET INSERT_ID = 0;
+INSERT INTO t1 SET a = 1 ON DUPLICATE KEY UPDATE a = NULL;
+SELECT LAST_INSERT_ID();
+LAST_INSERT_ID()
+999
+SELECT * FROM t1;
+a
+1
+INSERT INTO t1 SET a = 1 ON DUPLICATE KEY UPDATE a = NULL;
+SELECT LAST_INSERT_ID();
+LAST_INSERT_ID()
+999
+SELECT * FROM t1;
+a
+0
+UPDATE t1 SET a = 1 WHERE a IS NULL;
+SELECT LAST_INSERT_ID();
+LAST_INSERT_ID()
+999
+SELECT * FROM t1;
+a
+0
+UPDATE t1 SET a = NULL WHERE a = 1;
+SELECT LAST_INSERT_ID();
+LAST_INSERT_ID()
+999
+SELECT * FROM t1;
+a
+0
+DROP TABLE t1;
##############################################################################
diff --git a/mysql-test/suite/parts/r/partition_decimal_innodb.result b/mysql-test/suite/parts/r/partition_decimal_innodb.result
index c69c880cc6f..8eb408d05d9 100644
--- a/mysql-test/suite/parts/r/partition_decimal_innodb.result
+++ b/mysql-test/suite/parts/r/partition_decimal_innodb.result
@@ -109,33 +109,6 @@ SUBPARTITIONS 2
PARTITION pa8 VALUES LESS THAN (8) ENGINE = InnoDB,
PARTITION pa10 VALUES LESS THAN (10) ENGINE = InnoDB) */
9*3 inserts;
-insert into t3 values (9);
-insert into t3 values (9+0.333333333);
-insert into t3 values (9+0.755555555);
-insert into t3 values (8);
-insert into t3 values (8+0.333333333);
-insert into t3 values (8+0.755555555);
-insert into t3 values (7);
-insert into t3 values (7+0.333333333);
-insert into t3 values (7+0.755555555);
-insert into t3 values (6);
-insert into t3 values (6+0.333333333);
-insert into t3 values (6+0.755555555);
-insert into t3 values (5);
-insert into t3 values (5+0.333333333);
-insert into t3 values (5+0.755555555);
-insert into t3 values (4);
-insert into t3 values (4+0.333333333);
-insert into t3 values (4+0.755555555);
-insert into t3 values (3);
-insert into t3 values (3+0.333333333);
-insert into t3 values (3+0.755555555);
-insert into t3 values (2);
-insert into t3 values (2+0.333333333);
-insert into t3 values (2+0.755555555);
-insert into t3 values (1);
-insert into t3 values (1+0.333333333);
-insert into t3 values (1+0.755555555);
select count(*) from t3;
count(*)
27
@@ -163,33 +136,6 @@ SUBPARTITIONS 2
PARTITION pa8 VALUES IN (7,8) ENGINE = InnoDB,
PARTITION pa10 VALUES IN (9,10) ENGINE = InnoDB) */
9*3 inserts;
-insert into t4 values (9);
-insert into t4 values (9+0.333333333);
-insert into t4 values (9+0.755555555);
-insert into t4 values (8);
-insert into t4 values (8+0.333333333);
-insert into t4 values (8+0.755555555);
-insert into t4 values (7);
-insert into t4 values (7+0.333333333);
-insert into t4 values (7+0.755555555);
-insert into t4 values (6);
-insert into t4 values (6+0.333333333);
-insert into t4 values (6+0.755555555);
-insert into t4 values (5);
-insert into t4 values (5+0.333333333);
-insert into t4 values (5+0.755555555);
-insert into t4 values (4);
-insert into t4 values (4+0.333333333);
-insert into t4 values (4+0.755555555);
-insert into t4 values (3);
-insert into t4 values (3+0.333333333);
-insert into t4 values (3+0.755555555);
-insert into t4 values (2);
-insert into t4 values (2+0.333333333);
-insert into t4 values (2+0.755555555);
-insert into t4 values (1);
-insert into t4 values (1+0.333333333);
-insert into t4 values (1+0.755555555);
select count(*) from t4;
count(*)
27
diff --git a/mysql-test/suite/parts/r/partition_decimal_myisam.result b/mysql-test/suite/parts/r/partition_decimal_myisam.result
index cdafb721ea4..2b214bd94cf 100644
--- a/mysql-test/suite/parts/r/partition_decimal_myisam.result
+++ b/mysql-test/suite/parts/r/partition_decimal_myisam.result
@@ -109,33 +109,6 @@ SUBPARTITIONS 2
PARTITION pa8 VALUES LESS THAN (8) ENGINE = MyISAM,
PARTITION pa10 VALUES LESS THAN (10) ENGINE = MyISAM) */
9*3 inserts;
-insert into t3 values (9);
-insert into t3 values (9+0.333333333);
-insert into t3 values (9+0.755555555);
-insert into t3 values (8);
-insert into t3 values (8+0.333333333);
-insert into t3 values (8+0.755555555);
-insert into t3 values (7);
-insert into t3 values (7+0.333333333);
-insert into t3 values (7+0.755555555);
-insert into t3 values (6);
-insert into t3 values (6+0.333333333);
-insert into t3 values (6+0.755555555);
-insert into t3 values (5);
-insert into t3 values (5+0.333333333);
-insert into t3 values (5+0.755555555);
-insert into t3 values (4);
-insert into t3 values (4+0.333333333);
-insert into t3 values (4+0.755555555);
-insert into t3 values (3);
-insert into t3 values (3+0.333333333);
-insert into t3 values (3+0.755555555);
-insert into t3 values (2);
-insert into t3 values (2+0.333333333);
-insert into t3 values (2+0.755555555);
-insert into t3 values (1);
-insert into t3 values (1+0.333333333);
-insert into t3 values (1+0.755555555);
select count(*) from t3;
count(*)
27
@@ -163,33 +136,6 @@ SUBPARTITIONS 2
PARTITION pa8 VALUES IN (7,8) ENGINE = MyISAM,
PARTITION pa10 VALUES IN (9,10) ENGINE = MyISAM) */
9*3 inserts;
-insert into t4 values (9);
-insert into t4 values (9+0.333333333);
-insert into t4 values (9+0.755555555);
-insert into t4 values (8);
-insert into t4 values (8+0.333333333);
-insert into t4 values (8+0.755555555);
-insert into t4 values (7);
-insert into t4 values (7+0.333333333);
-insert into t4 values (7+0.755555555);
-insert into t4 values (6);
-insert into t4 values (6+0.333333333);
-insert into t4 values (6+0.755555555);
-insert into t4 values (5);
-insert into t4 values (5+0.333333333);
-insert into t4 values (5+0.755555555);
-insert into t4 values (4);
-insert into t4 values (4+0.333333333);
-insert into t4 values (4+0.755555555);
-insert into t4 values (3);
-insert into t4 values (3+0.333333333);
-insert into t4 values (3+0.755555555);
-insert into t4 values (2);
-insert into t4 values (2+0.333333333);
-insert into t4 values (2+0.755555555);
-insert into t4 values (1);
-insert into t4 values (1+0.333333333);
-insert into t4 values (1+0.755555555);
select count(*) from t4;
count(*)
27
diff --git a/mysql-test/suite/parts/r/partition_recover_myisam.result b/mysql-test/suite/parts/r/partition_recover_myisam.result
index 7de0cd31825..94ce4264d77 100644
--- a/mysql-test/suite/parts/r/partition_recover_myisam.result
+++ b/mysql-test/suite/parts/r/partition_recover_myisam.result
@@ -1,5 +1,5 @@
call mtr.add_suppression("..test.t1_will_crash");
-call mtr.add_suppression("Got an error from unknown thread, ha_myisam.cc");
+call mtr.add_suppression("Got an error from unknown thread");
CREATE TABLE t1_will_crash (a INT, KEY (a)) ENGINE=MyISAM;
INSERT INTO t1_will_crash VALUES (1), (2), (3), (4), (5), (6), (7), (8), (9), (10), (11);
FLUSH TABLES;
diff --git a/mysql-test/suite/parts/t/partition_recover_myisam.test b/mysql-test/suite/parts/t/partition_recover_myisam.test
index fc121b7408f..ef5c9654efa 100644
--- a/mysql-test/suite/parts/t/partition_recover_myisam.test
+++ b/mysql-test/suite/parts/t/partition_recover_myisam.test
@@ -1,7 +1,7 @@
# test the auto-recover (--myisam-recover) of partitioned myisam tables
call mtr.add_suppression("..test.t1_will_crash");
-call mtr.add_suppression("Got an error from unknown thread, ha_myisam.cc");
+call mtr.add_suppression("Got an error from unknown thread");
--source include/have_partition.inc
--disable_warnings
diff --git a/mysql-test/suite/perfschema/r/pfs_upgrade.result b/mysql-test/suite/perfschema/r/pfs_upgrade.result
index 2ec6a3bd1dd..c9347809157 100644
--- a/mysql-test/suite/perfschema/r/pfs_upgrade.result
+++ b/mysql-test/suite/perfschema/r/pfs_upgrade.result
@@ -8,24 +8,24 @@ use performance_schema;
show tables like "user_table";
Tables_in_performance_schema (user_table)
user_table
-ERROR 1050 (42S01) at line 183: Table 'cond_instances' already exists
-ERROR 1050 (42S01) at line 213: Table 'events_waits_current' already exists
-ERROR 1050 (42S01) at line 227: Table 'events_waits_history' already exists
-ERROR 1050 (42S01) at line 241: Table 'events_waits_history_long' already exists
-ERROR 1050 (42S01) at line 262: Table 'events_waits_summary_by_instance' already exists
-ERROR 1050 (42S01) at line 283: Table 'events_waits_summary_by_thread_by_event_name' already exists
-ERROR 1050 (42S01) at line 303: Table 'events_waits_summary_global_by_event_name' already exists
-ERROR 1050 (42S01) at line 320: Table 'file_instances' already exists
-ERROR 1050 (42S01) at line 339: Table 'file_summary_by_event_name' already exists
-ERROR 1050 (42S01) at line 359: Table 'file_summary_by_instance' already exists
-ERROR 1050 (42S01) at line 376: Table 'mutex_instances' already exists
-ERROR 1050 (42S01) at line 394: Table 'performance_timers' already exists
-ERROR 1050 (42S01) at line 412: Table 'rwlock_instances' already exists
-ERROR 1050 (42S01) at line 428: Table 'setup_consumers' already exists
-ERROR 1050 (42S01) at line 445: Table 'setup_instruments' already exists
-ERROR 1050 (42S01) at line 461: Table 'setup_timers' already exists
-ERROR 1050 (42S01) at line 478: Table 'threads' already exists
-ERROR 1644 (HY000) at line 1122: Unexpected content found in the performance_schema database.
+ERROR 1050 (42S01) at line 181: Table 'cond_instances' already exists
+ERROR 1050 (42S01) at line 211: Table 'events_waits_current' already exists
+ERROR 1050 (42S01) at line 225: Table 'events_waits_history' already exists
+ERROR 1050 (42S01) at line 239: Table 'events_waits_history_long' already exists
+ERROR 1050 (42S01) at line 260: Table 'events_waits_summary_by_instance' already exists
+ERROR 1050 (42S01) at line 281: Table 'events_waits_summary_by_thread_by_event_name' already exists
+ERROR 1050 (42S01) at line 301: Table 'events_waits_summary_global_by_event_name' already exists
+ERROR 1050 (42S01) at line 318: Table 'file_instances' already exists
+ERROR 1050 (42S01) at line 337: Table 'file_summary_by_event_name' already exists
+ERROR 1050 (42S01) at line 357: Table 'file_summary_by_instance' already exists
+ERROR 1050 (42S01) at line 374: Table 'mutex_instances' already exists
+ERROR 1050 (42S01) at line 392: Table 'performance_timers' already exists
+ERROR 1050 (42S01) at line 410: Table 'rwlock_instances' already exists
+ERROR 1050 (42S01) at line 426: Table 'setup_consumers' already exists
+ERROR 1050 (42S01) at line 443: Table 'setup_instruments' already exists
+ERROR 1050 (42S01) at line 459: Table 'setup_timers' already exists
+ERROR 1050 (42S01) at line 476: Table 'threads' already exists
+ERROR 1644 (HY000) at line 1120: Unexpected content found in the performance_schema database.
FATAL ERROR: Upgrade failed
show tables like "user_table";
Tables_in_performance_schema (user_table)
@@ -38,24 +38,24 @@ use performance_schema;
show tables like "user_view";
Tables_in_performance_schema (user_view)
user_view
-ERROR 1050 (42S01) at line 183: Table 'cond_instances' already exists
-ERROR 1050 (42S01) at line 213: Table 'events_waits_current' already exists
-ERROR 1050 (42S01) at line 227: Table 'events_waits_history' already exists
-ERROR 1050 (42S01) at line 241: Table 'events_waits_history_long' already exists
-ERROR 1050 (42S01) at line 262: Table 'events_waits_summary_by_instance' already exists
-ERROR 1050 (42S01) at line 283: Table 'events_waits_summary_by_thread_by_event_name' already exists
-ERROR 1050 (42S01) at line 303: Table 'events_waits_summary_global_by_event_name' already exists
-ERROR 1050 (42S01) at line 320: Table 'file_instances' already exists
-ERROR 1050 (42S01) at line 339: Table 'file_summary_by_event_name' already exists
-ERROR 1050 (42S01) at line 359: Table 'file_summary_by_instance' already exists
-ERROR 1050 (42S01) at line 376: Table 'mutex_instances' already exists
-ERROR 1050 (42S01) at line 394: Table 'performance_timers' already exists
-ERROR 1050 (42S01) at line 412: Table 'rwlock_instances' already exists
-ERROR 1050 (42S01) at line 428: Table 'setup_consumers' already exists
-ERROR 1050 (42S01) at line 445: Table 'setup_instruments' already exists
-ERROR 1050 (42S01) at line 461: Table 'setup_timers' already exists
-ERROR 1050 (42S01) at line 478: Table 'threads' already exists
-ERROR 1644 (HY000) at line 1122: Unexpected content found in the performance_schema database.
+ERROR 1050 (42S01) at line 181: Table 'cond_instances' already exists
+ERROR 1050 (42S01) at line 211: Table 'events_waits_current' already exists
+ERROR 1050 (42S01) at line 225: Table 'events_waits_history' already exists
+ERROR 1050 (42S01) at line 239: Table 'events_waits_history_long' already exists
+ERROR 1050 (42S01) at line 260: Table 'events_waits_summary_by_instance' already exists
+ERROR 1050 (42S01) at line 281: Table 'events_waits_summary_by_thread_by_event_name' already exists
+ERROR 1050 (42S01) at line 301: Table 'events_waits_summary_global_by_event_name' already exists
+ERROR 1050 (42S01) at line 318: Table 'file_instances' already exists
+ERROR 1050 (42S01) at line 337: Table 'file_summary_by_event_name' already exists
+ERROR 1050 (42S01) at line 357: Table 'file_summary_by_instance' already exists
+ERROR 1050 (42S01) at line 374: Table 'mutex_instances' already exists
+ERROR 1050 (42S01) at line 392: Table 'performance_timers' already exists
+ERROR 1050 (42S01) at line 410: Table 'rwlock_instances' already exists
+ERROR 1050 (42S01) at line 426: Table 'setup_consumers' already exists
+ERROR 1050 (42S01) at line 443: Table 'setup_instruments' already exists
+ERROR 1050 (42S01) at line 459: Table 'setup_timers' already exists
+ERROR 1050 (42S01) at line 476: Table 'threads' already exists
+ERROR 1644 (HY000) at line 1120: Unexpected content found in the performance_schema database.
FATAL ERROR: Upgrade failed
show tables like "user_view";
Tables_in_performance_schema (user_view)
@@ -66,24 +66,24 @@ drop view test.user_view;
create procedure test.user_proc()
select "Not supposed to be here";
update mysql.proc set db='performance_schema' where name='user_proc';
-ERROR 1050 (42S01) at line 183: Table 'cond_instances' already exists
-ERROR 1050 (42S01) at line 213: Table 'events_waits_current' already exists
-ERROR 1050 (42S01) at line 227: Table 'events_waits_history' already exists
-ERROR 1050 (42S01) at line 241: Table 'events_waits_history_long' already exists
-ERROR 1050 (42S01) at line 262: Table 'events_waits_summary_by_instance' already exists
-ERROR 1050 (42S01) at line 283: Table 'events_waits_summary_by_thread_by_event_name' already exists
-ERROR 1050 (42S01) at line 303: Table 'events_waits_summary_global_by_event_name' already exists
-ERROR 1050 (42S01) at line 320: Table 'file_instances' already exists
-ERROR 1050 (42S01) at line 339: Table 'file_summary_by_event_name' already exists
-ERROR 1050 (42S01) at line 359: Table 'file_summary_by_instance' already exists
-ERROR 1050 (42S01) at line 376: Table 'mutex_instances' already exists
-ERROR 1050 (42S01) at line 394: Table 'performance_timers' already exists
-ERROR 1050 (42S01) at line 412: Table 'rwlock_instances' already exists
-ERROR 1050 (42S01) at line 428: Table 'setup_consumers' already exists
-ERROR 1050 (42S01) at line 445: Table 'setup_instruments' already exists
-ERROR 1050 (42S01) at line 461: Table 'setup_timers' already exists
-ERROR 1050 (42S01) at line 478: Table 'threads' already exists
-ERROR 1644 (HY000) at line 1122: Unexpected content found in the performance_schema database.
+ERROR 1050 (42S01) at line 181: Table 'cond_instances' already exists
+ERROR 1050 (42S01) at line 211: Table 'events_waits_current' already exists
+ERROR 1050 (42S01) at line 225: Table 'events_waits_history' already exists
+ERROR 1050 (42S01) at line 239: Table 'events_waits_history_long' already exists
+ERROR 1050 (42S01) at line 260: Table 'events_waits_summary_by_instance' already exists
+ERROR 1050 (42S01) at line 281: Table 'events_waits_summary_by_thread_by_event_name' already exists
+ERROR 1050 (42S01) at line 301: Table 'events_waits_summary_global_by_event_name' already exists
+ERROR 1050 (42S01) at line 318: Table 'file_instances' already exists
+ERROR 1050 (42S01) at line 337: Table 'file_summary_by_event_name' already exists
+ERROR 1050 (42S01) at line 357: Table 'file_summary_by_instance' already exists
+ERROR 1050 (42S01) at line 374: Table 'mutex_instances' already exists
+ERROR 1050 (42S01) at line 392: Table 'performance_timers' already exists
+ERROR 1050 (42S01) at line 410: Table 'rwlock_instances' already exists
+ERROR 1050 (42S01) at line 426: Table 'setup_consumers' already exists
+ERROR 1050 (42S01) at line 443: Table 'setup_instruments' already exists
+ERROR 1050 (42S01) at line 459: Table 'setup_timers' already exists
+ERROR 1050 (42S01) at line 476: Table 'threads' already exists
+ERROR 1644 (HY000) at line 1120: Unexpected content found in the performance_schema database.
FATAL ERROR: Upgrade failed
select name from mysql.proc where db='performance_schema';
name
@@ -94,24 +94,24 @@ drop procedure test.user_proc;
create function test.user_func() returns integer
return 0;
update mysql.proc set db='performance_schema' where name='user_func';
-ERROR 1050 (42S01) at line 183: Table 'cond_instances' already exists
-ERROR 1050 (42S01) at line 213: Table 'events_waits_current' already exists
-ERROR 1050 (42S01) at line 227: Table 'events_waits_history' already exists
-ERROR 1050 (42S01) at line 241: Table 'events_waits_history_long' already exists
-ERROR 1050 (42S01) at line 262: Table 'events_waits_summary_by_instance' already exists
-ERROR 1050 (42S01) at line 283: Table 'events_waits_summary_by_thread_by_event_name' already exists
-ERROR 1050 (42S01) at line 303: Table 'events_waits_summary_global_by_event_name' already exists
-ERROR 1050 (42S01) at line 320: Table 'file_instances' already exists
-ERROR 1050 (42S01) at line 339: Table 'file_summary_by_event_name' already exists
-ERROR 1050 (42S01) at line 359: Table 'file_summary_by_instance' already exists
-ERROR 1050 (42S01) at line 376: Table 'mutex_instances' already exists
-ERROR 1050 (42S01) at line 394: Table 'performance_timers' already exists
-ERROR 1050 (42S01) at line 412: Table 'rwlock_instances' already exists
-ERROR 1050 (42S01) at line 428: Table 'setup_consumers' already exists
-ERROR 1050 (42S01) at line 445: Table 'setup_instruments' already exists
-ERROR 1050 (42S01) at line 461: Table 'setup_timers' already exists
-ERROR 1050 (42S01) at line 478: Table 'threads' already exists
-ERROR 1644 (HY000) at line 1122: Unexpected content found in the performance_schema database.
+ERROR 1050 (42S01) at line 181: Table 'cond_instances' already exists
+ERROR 1050 (42S01) at line 211: Table 'events_waits_current' already exists
+ERROR 1050 (42S01) at line 225: Table 'events_waits_history' already exists
+ERROR 1050 (42S01) at line 239: Table 'events_waits_history_long' already exists
+ERROR 1050 (42S01) at line 260: Table 'events_waits_summary_by_instance' already exists
+ERROR 1050 (42S01) at line 281: Table 'events_waits_summary_by_thread_by_event_name' already exists
+ERROR 1050 (42S01) at line 301: Table 'events_waits_summary_global_by_event_name' already exists
+ERROR 1050 (42S01) at line 318: Table 'file_instances' already exists
+ERROR 1050 (42S01) at line 337: Table 'file_summary_by_event_name' already exists
+ERROR 1050 (42S01) at line 357: Table 'file_summary_by_instance' already exists
+ERROR 1050 (42S01) at line 374: Table 'mutex_instances' already exists
+ERROR 1050 (42S01) at line 392: Table 'performance_timers' already exists
+ERROR 1050 (42S01) at line 410: Table 'rwlock_instances' already exists
+ERROR 1050 (42S01) at line 426: Table 'setup_consumers' already exists
+ERROR 1050 (42S01) at line 443: Table 'setup_instruments' already exists
+ERROR 1050 (42S01) at line 459: Table 'setup_timers' already exists
+ERROR 1050 (42S01) at line 476: Table 'threads' already exists
+ERROR 1644 (HY000) at line 1120: Unexpected content found in the performance_schema database.
FATAL ERROR: Upgrade failed
select name from mysql.proc where db='performance_schema';
name
@@ -122,24 +122,24 @@ drop function test.user_func;
create event test.user_event on schedule every 1 day do
select "not supposed to be here";
update mysql.event set db='performance_schema' where name='user_event';
-ERROR 1050 (42S01) at line 183: Table 'cond_instances' already exists
-ERROR 1050 (42S01) at line 213: Table 'events_waits_current' already exists
-ERROR 1050 (42S01) at line 227: Table 'events_waits_history' already exists
-ERROR 1050 (42S01) at line 241: Table 'events_waits_history_long' already exists
-ERROR 1050 (42S01) at line 262: Table 'events_waits_summary_by_instance' already exists
-ERROR 1050 (42S01) at line 283: Table 'events_waits_summary_by_thread_by_event_name' already exists
-ERROR 1050 (42S01) at line 303: Table 'events_waits_summary_global_by_event_name' already exists
-ERROR 1050 (42S01) at line 320: Table 'file_instances' already exists
-ERROR 1050 (42S01) at line 339: Table 'file_summary_by_event_name' already exists
-ERROR 1050 (42S01) at line 359: Table 'file_summary_by_instance' already exists
-ERROR 1050 (42S01) at line 376: Table 'mutex_instances' already exists
-ERROR 1050 (42S01) at line 394: Table 'performance_timers' already exists
-ERROR 1050 (42S01) at line 412: Table 'rwlock_instances' already exists
-ERROR 1050 (42S01) at line 428: Table 'setup_consumers' already exists
-ERROR 1050 (42S01) at line 445: Table 'setup_instruments' already exists
-ERROR 1050 (42S01) at line 461: Table 'setup_timers' already exists
-ERROR 1050 (42S01) at line 478: Table 'threads' already exists
-ERROR 1644 (HY000) at line 1122: Unexpected content found in the performance_schema database.
+ERROR 1050 (42S01) at line 181: Table 'cond_instances' already exists
+ERROR 1050 (42S01) at line 211: Table 'events_waits_current' already exists
+ERROR 1050 (42S01) at line 225: Table 'events_waits_history' already exists
+ERROR 1050 (42S01) at line 239: Table 'events_waits_history_long' already exists
+ERROR 1050 (42S01) at line 260: Table 'events_waits_summary_by_instance' already exists
+ERROR 1050 (42S01) at line 281: Table 'events_waits_summary_by_thread_by_event_name' already exists
+ERROR 1050 (42S01) at line 301: Table 'events_waits_summary_global_by_event_name' already exists
+ERROR 1050 (42S01) at line 318: Table 'file_instances' already exists
+ERROR 1050 (42S01) at line 337: Table 'file_summary_by_event_name' already exists
+ERROR 1050 (42S01) at line 357: Table 'file_summary_by_instance' already exists
+ERROR 1050 (42S01) at line 374: Table 'mutex_instances' already exists
+ERROR 1050 (42S01) at line 392: Table 'performance_timers' already exists
+ERROR 1050 (42S01) at line 410: Table 'rwlock_instances' already exists
+ERROR 1050 (42S01) at line 426: Table 'setup_consumers' already exists
+ERROR 1050 (42S01) at line 443: Table 'setup_instruments' already exists
+ERROR 1050 (42S01) at line 459: Table 'setup_timers' already exists
+ERROR 1050 (42S01) at line 476: Table 'threads' already exists
+ERROR 1644 (HY000) at line 1120: Unexpected content found in the performance_schema database.
FATAL ERROR: Upgrade failed
select name from mysql.event where db='performance_schema';
name
diff --git a/mysql-test/suite/rpl/r/rpl_ddl.result b/mysql-test/suite/rpl/r/rpl_ddl.result
index a451b2e581a..246ae3790a6 100644
--- a/mysql-test/suite/rpl/r/rpl_ddl.result
+++ b/mysql-test/suite/rpl/r/rpl_ddl.result
@@ -1,15 +1,8 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
+include/master-slave.inc
+[connection master]
-------- switch to master -------
SET AUTOCOMMIT = 1;
-DROP DATABASE IF EXISTS mysqltest1;
-DROP DATABASE IF EXISTS mysqltest2;
-DROP DATABASE IF EXISTS mysqltest3;
CREATE DATABASE mysqltest1;
CREATE DATABASE mysqltest2;
CREATE TABLE mysqltest1.t1 (f1 BIGINT) ENGINE=InnoDB;
@@ -1626,3 +1619,4 @@ use test;
-------- switch to master -------
DROP DATABASE mysqltest1;
DROP DATABASE mysqltest3;
+include/rpl_end.inc
diff --git a/mysql-test/suite/rpl/r/rpl_do_grant.result b/mysql-test/suite/rpl/r/rpl_do_grant.result
index 772ffd1db20..671af1dce58 100644
--- a/mysql-test/suite/rpl/r/rpl_do_grant.result
+++ b/mysql-test/suite/rpl/r/rpl_do_grant.result
@@ -158,9 +158,9 @@ SELECT * FROM mysql.procs_priv;
Host Db User Routine_name Routine_type Grantor Proc_priv Timestamp
SELECT upgrade_alter_func();
ERROR HY000: The user specified as a definer ('create_rout_db'@'localhost') does not exist
-USE test;
-DROP FUNCTION bug42217_db.upgrade_del_func;
-DROP FUNCTION bug42217_db.upgrade_alter_func;
+USE bug42217_db;
+DROP FUNCTION upgrade_del_func;
+DROP FUNCTION upgrade_alter_func;
DROP DATABASE bug42217_db;
SET SQL_LOG_BIN= 0;
DROP USER 'create_rout_db'@'localhost';
diff --git a/mysql-test/suite/rpl/r/rpl_ignore_table.result b/mysql-test/suite/rpl/r/rpl_ignore_table.result
index e5f39655c8d..c06e4361098 100644
--- a/mysql-test/suite/rpl/r/rpl_ignore_table.result
+++ b/mysql-test/suite/rpl/r/rpl_ignore_table.result
@@ -30,7 +30,7 @@ Warnings:
Warning 1364 Field 'ssl_cipher' doesn't have a default value
Warning 1364 Field 'x509_issuer' doesn't have a default value
Warning 1364 Field 'x509_subject' doesn't have a default value
-Warning 1364 Field 'auth_string' doesn't have a default value
+Warning 1364 Field 'authentication_string' doesn't have a default value
GRANT SELECT ON *.* TO mysqltest6@localhost;
GRANT INSERT ON *.* TO mysqltest6@localhost;
GRANT INSERT ON test.* TO mysqltest6@localhost;
diff --git a/mysql-test/suite/rpl/r/rpl_log_pos.result b/mysql-test/suite/rpl/r/rpl_log_pos.result
index b8bf8b447d2..58d0e202110 100644
--- a/mysql-test/suite/rpl/r/rpl_log_pos.result
+++ b/mysql-test/suite/rpl/r/rpl_log_pos.result
@@ -1,5 +1,7 @@
include/master-slave.inc
[connection master]
+create table if not exists t1 (n int);
+drop table t1;
call mtr.add_suppression ("Slave I/O: Got fatal error 1236 from master when reading data from binary");
call mtr.add_suppression ("Error in Log_event::read_log_event");
show master status;
@@ -7,7 +9,6 @@ File Position Binlog_Do_DB Binlog_Ignore_DB
master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
include/stop_slave.inc
change master to master_log_pos=MASTER_LOG_POS;
-Read_Master_Log_Pos = '75'
start slave;
include/wait_for_slave_io_error.inc [errno=1236]
Last_IO_Error = 'Got fatal error 1236 from master when reading data from binary log: 'log event entry exceeded max_allowed_packet; Increase max_allowed_packet on master''
diff --git a/mysql-test/suite/rpl/r/rpl_mixed_binlog_max_cache_size.result b/mysql-test/suite/rpl/r/rpl_mixed_binlog_max_cache_size.result
index 14ed79680f1..143475d7bae 100644
--- a/mysql-test/suite/rpl/r/rpl_mixed_binlog_max_cache_size.result
+++ b/mysql-test/suite/rpl/r/rpl_mixed_binlog_max_cache_size.result
@@ -26,16 +26,29 @@ include/diff_tables.inc [master:t1,slave:t1]
TRUNCATE TABLE t1;
TRUNCATE TABLE t2;
TRUNCATE TABLE t3;
+set default_storage_engine=innodb;
BEGIN;
Got one of the listed errors
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (7, 's');;
+INSERT INTO t2 (a, data) VALUES (8, 's');;
+INSERT INTO t1 (a, data) VALUES (9, 's');;
+ALTER TABLE t3 ADD COLUMN d int;
BEGIN;
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (19, 's');;
+INSERT INTO t2 (a, data) VALUES (20, 's');;
+INSERT INTO t1 (a, data) VALUES (21, 's');;
+CREATE TABLE t4 SELECT * FROM t1;
BEGIN;
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (27, 's');;
+INSERT INTO t2 (a, data) VALUES (28, 's');;
+INSERT INTO t1 (a, data) VALUES (29, 's');;
+CREATE TABLE t5 (a int);
include/diff_tables.inc [master:t1,slave:t1]
########################################################################################
# 3 - BEGIN - COMMIT
@@ -97,6 +110,9 @@ BEGIN;
Got one of the listed errors
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (7, 's');;
+INSERT INTO t2 (a, data) VALUES (8, 's');;
+INSERT INTO t1 (a, data) VALUES (9, 's');;
ROLLBACK TO sv;
Warnings:
Warning 1196 Some non-transactional changed tables couldn't be rolled back
@@ -112,6 +128,10 @@ BEGIN;
Got one of the listed errors
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (8, 's');;
+INSERT INTO t1 (a, data) VALUES (9, 's');;
+INSERT INTO t2 (a, data) VALUES (10, 's');;
+INSERT INTO t1 (a, data) VALUES (11, 's');;
COMMIT;
BEGIN;
Got one of the listed errors
diff --git a/mysql-test/suite/rpl/r/rpl_mixed_implicit_commit_binlog.result b/mysql-test/suite/rpl/r/rpl_mixed_implicit_commit_binlog.result
index baeefe7c6ea..fff3776a0e8 100644
--- a/mysql-test/suite/rpl/r/rpl_mixed_implicit_commit_binlog.result
+++ b/mysql-test/suite/rpl/r/rpl_mixed_implicit_commit_binlog.result
@@ -1,5 +1,6 @@
include/master-slave.inc
[connection master]
+set session storage_engine=innodb;
#########################################################################
# CONFIGURATION
#########################################################################
diff --git a/mysql-test/suite/rpl/r/rpl_optimize.result b/mysql-test/suite/rpl/r/rpl_optimize.result
index b606e47a55f..260ee30ac06 100644
--- a/mysql-test/suite/rpl/r/rpl_optimize.result
+++ b/mysql-test/suite/rpl/r/rpl_optimize.result
@@ -1,5 +1,6 @@
include/master-slave.inc
[connection master]
+drop tables if exists t1;
create table t1 (a int not null auto_increment primary key, b int, key(b));
INSERT INTO t1 (a) VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
INSERT INTO t1 (a) SELECT null FROM t1;
diff --git a/mysql-test/suite/rpl/r/rpl_rotate_logs.result b/mysql-test/suite/rpl/r/rpl_rotate_logs.result
index 279ab88bde3..9144d3c0e72 100644
--- a/mysql-test/suite/rpl/r/rpl_rotate_logs.result
+++ b/mysql-test/suite/rpl/r/rpl_rotate_logs.result
@@ -88,8 +88,8 @@ master-bin.000009 # <Binlog_Do_DB> <Binlog_Ignore_DB>
select * from t4;
a
testing temporary tables part 2
-Master_Log_File master-bin.000009
-Relay_Master_Log_File master-bin.000009
+Master_Log_File = 'master-bin.000009'
+Relay_Master_Log_File = 'master-bin.000009'
include/check_slave_is_running.inc
lock tables t3 read;
select count(*) from t3 where n >= 4;
diff --git a/mysql-test/suite/rpl/r/rpl_row_binlog_max_cache_size.result b/mysql-test/suite/rpl/r/rpl_row_binlog_max_cache_size.result
index 077199a0c93..95cb30f71f6 100644
--- a/mysql-test/suite/rpl/r/rpl_row_binlog_max_cache_size.result
+++ b/mysql-test/suite/rpl/r/rpl_row_binlog_max_cache_size.result
@@ -26,17 +26,30 @@ include/diff_tables.inc [master:t1,slave:t1]
TRUNCATE TABLE t1;
TRUNCATE TABLE t2;
TRUNCATE TABLE t3;
+set default_storage_engine=innodb;
BEGIN;
Got one of the listed errors
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (7, 's');;
+INSERT INTO t2 (a, data) VALUES (8, 's');;
+INSERT INTO t1 (a, data) VALUES (9, 's');;
+ALTER TABLE t3 ADD COLUMN d int;
BEGIN;
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (19, 's');;
+INSERT INTO t2 (a, data) VALUES (20, 's');;
+INSERT INTO t1 (a, data) VALUES (21, 's');;
+CREATE TABLE t4 SELECT * FROM t1;
Got one of the listed errors
BEGIN;
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (27, 's');;
+INSERT INTO t2 (a, data) VALUES (28, 's');;
+INSERT INTO t1 (a, data) VALUES (29, 's');;
+CREATE TABLE t5 (a int);
include/diff_tables.inc [master:t1,slave:t1]
########################################################################################
# 3 - BEGIN - COMMIT
@@ -98,6 +111,9 @@ BEGIN;
Got one of the listed errors
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (7, 's');;
+INSERT INTO t2 (a, data) VALUES (8, 's');;
+INSERT INTO t1 (a, data) VALUES (9, 's');;
ROLLBACK TO sv;
Warnings:
Warning 1196 Some non-transactional changed tables couldn't be rolled back
@@ -113,6 +129,10 @@ BEGIN;
Got one of the listed errors
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (8, 's');;
+INSERT INTO t1 (a, data) VALUES (9, 's');;
+INSERT INTO t2 (a, data) VALUES (10, 's');;
+INSERT INTO t1 (a, data) VALUES (11, 's');;
COMMIT;
BEGIN;
Got one of the listed errors
diff --git a/mysql-test/suite/rpl/r/rpl_row_implicit_commit_binlog.result b/mysql-test/suite/rpl/r/rpl_row_implicit_commit_binlog.result
index f81e5db986e..691ebe1de69 100644
--- a/mysql-test/suite/rpl/r/rpl_row_implicit_commit_binlog.result
+++ b/mysql-test/suite/rpl/r/rpl_row_implicit_commit_binlog.result
@@ -1,5 +1,6 @@
include/master-slave.inc
[connection master]
+set session storage_engine=innodb;
#########################################################################
# CONFIGURATION
#########################################################################
diff --git a/mysql-test/suite/rpl/r/rpl_stm_000001.result b/mysql-test/suite/rpl/r/rpl_stm_000001.result
index 65715b471aa..eb421d1adc4 100644
--- a/mysql-test/suite/rpl/r/rpl_stm_000001.result
+++ b/mysql-test/suite/rpl/r/rpl_stm_000001.result
@@ -62,7 +62,7 @@ Warnings:
Warning 1364 Field 'ssl_cipher' doesn't have a default value
Warning 1364 Field 'x509_issuer' doesn't have a default value
Warning 1364 Field 'x509_subject' doesn't have a default value
-Warning 1364 Field 'auth_string' doesn't have a default value
+Warning 1364 Field 'authentication_string' doesn't have a default value
select select_priv,user from mysql.user where user = _binary'blafasel2';
select_priv user
N blafasel2
diff --git a/mysql-test/suite/rpl/r/rpl_stm_binlog_max_cache_size.result b/mysql-test/suite/rpl/r/rpl_stm_binlog_max_cache_size.result
index 14ed79680f1..143475d7bae 100644
--- a/mysql-test/suite/rpl/r/rpl_stm_binlog_max_cache_size.result
+++ b/mysql-test/suite/rpl/r/rpl_stm_binlog_max_cache_size.result
@@ -26,16 +26,29 @@ include/diff_tables.inc [master:t1,slave:t1]
TRUNCATE TABLE t1;
TRUNCATE TABLE t2;
TRUNCATE TABLE t3;
+set default_storage_engine=innodb;
BEGIN;
Got one of the listed errors
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (7, 's');;
+INSERT INTO t2 (a, data) VALUES (8, 's');;
+INSERT INTO t1 (a, data) VALUES (9, 's');;
+ALTER TABLE t3 ADD COLUMN d int;
BEGIN;
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (19, 's');;
+INSERT INTO t2 (a, data) VALUES (20, 's');;
+INSERT INTO t1 (a, data) VALUES (21, 's');;
+CREATE TABLE t4 SELECT * FROM t1;
BEGIN;
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (27, 's');;
+INSERT INTO t2 (a, data) VALUES (28, 's');;
+INSERT INTO t1 (a, data) VALUES (29, 's');;
+CREATE TABLE t5 (a int);
include/diff_tables.inc [master:t1,slave:t1]
########################################################################################
# 3 - BEGIN - COMMIT
@@ -97,6 +110,9 @@ BEGIN;
Got one of the listed errors
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (7, 's');;
+INSERT INTO t2 (a, data) VALUES (8, 's');;
+INSERT INTO t1 (a, data) VALUES (9, 's');;
ROLLBACK TO sv;
Warnings:
Warning 1196 Some non-transactional changed tables couldn't be rolled back
@@ -112,6 +128,10 @@ BEGIN;
Got one of the listed errors
Got one of the listed errors
Got one of the listed errors
+INSERT INTO t1 (a, data) VALUES (8, 's');;
+INSERT INTO t1 (a, data) VALUES (9, 's');;
+INSERT INTO t2 (a, data) VALUES (10, 's');;
+INSERT INTO t1 (a, data) VALUES (11, 's');;
COMMIT;
BEGIN;
Got one of the listed errors
diff --git a/mysql-test/suite/rpl/r/rpl_stm_maria.result b/mysql-test/suite/rpl/r/rpl_stm_maria.result
index 3a3ba256325..08d202b61c0 100644
--- a/mysql-test/suite/rpl/r/rpl_stm_maria.result
+++ b/mysql-test/suite/rpl/r/rpl_stm_maria.result
@@ -1,9 +1,5 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
+include/master-slave.inc
+[connection master]
CALL mtr.add_suppression('Unsafe statement written to the binary log using statement format');
DROP TABLE IF EXISTS t1;
DROP TABLE IF EXISTS t2;
@@ -50,3 +46,4 @@ a name old_a old_b truncate(rand_value,4)
106 t2 5 0 0.6699
107 t2 500 0 0.3593
drop table t1,t2,t3;
+include/rpl_end.inc
diff --git a/mysql-test/suite/rpl/r/rpl_table_options.result b/mysql-test/suite/rpl/r/rpl_table_options.result
index 9b0511f6494..423a2b65583 100644
--- a/mysql-test/suite/rpl/r/rpl_table_options.result
+++ b/mysql-test/suite/rpl/r/rpl_table_options.result
@@ -1,9 +1,5 @@
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
+include/master-slave.inc
+[connection master]
install plugin example soname 'ha_example.so';
set storage_engine=example;
create table t1 (a int not null) ull=12340;
@@ -23,3 +19,4 @@ select 1;
1
1
uninstall plugin example;
+include/rpl_end.inc
diff --git a/mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result b/mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result
index 8fb910666dc..ec7a10f8142 100644
--- a/mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result
+++ b/mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result
@@ -23,7 +23,7 @@ include/rpl_connect.inc [creating master]
DROP TABLE t1;
[on slave]
include/rpl_reset.inc
-CREATE TABLE t1 (a int);
+CREATE TABLE t1 (a int) engine=innodb;
CREATE TABLE t2 ( i1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (i1) );
CREATE TABLE t3 ( i1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (i1) );
CREATE TRIGGER tr1 AFTER DELETE ON t2 FOR EACH ROW INSERT INTO t3 () VALUES ();
@@ -47,7 +47,7 @@ Slave_open_temp_tables 0
DROP TABLE t3, t1;
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
-slave-bin.000001 # Query # # use `test`; CREATE TABLE t1 (a int)
+slave-bin.000001 # Query # # use `test`; CREATE TABLE t1 (a int) engine=innodb
slave-bin.000001 # Query # # use `test`; CREATE TABLE t2 ( i1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (i1) )
slave-bin.000001 # Query # # use `test`; CREATE TABLE t3 ( i1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (i1) )
slave-bin.000001 # Query # # use `test`; CREATE DEFINER=`root`@`localhost` TRIGGER tr1 AFTER DELETE ON t2 FOR EACH ROW INSERT INTO t3 () VALUES ()
@@ -93,7 +93,7 @@ BEGIN;
DROP TEMPORARY TABLE t1;
# The rows event will binlogged before 'DROP TEMPORARY TABLE t1',
# as t1 is non-transactional table
-INSERT INTO t1 VALUES(Rand());
+INSERT INTO t1 SELECT Rand();
COMMIT;
show binlog events in 'master-bin.000001' from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
diff --git a/mysql-test/suite/rpl/r/rpl_temporary.result b/mysql-test/suite/rpl/r/rpl_temporary.result
index dfab66d074f..73821172d92 100644
--- a/mysql-test/suite/rpl/r/rpl_temporary.result
+++ b/mysql-test/suite/rpl/r/rpl_temporary.result
@@ -1,6 +1,7 @@
include/master-slave.inc
[connection master]
-call mtr.add_suppression("Slave: Can\'t find record in \'user\' Error_code: 1032");
+SET sql_log_bin = 0;
+SET sql_log_bin = 1;
reset master;
DROP TABLE IF EXISTS t1;
CREATE TEMPORARY TABLE t1 (a char(1));
diff --git a/mysql-test/suite/rpl/t/rpl_do_grant.test b/mysql-test/suite/rpl/t/rpl_do_grant.test
index 94dd1c5d3f4..a39c3fb6375 100644
--- a/mysql-test/suite/rpl/t/rpl_do_grant.test
+++ b/mysql-test/suite/rpl/t/rpl_do_grant.test
@@ -200,17 +200,12 @@ SELECT upgrade_alter_func();
disconnect create_rout_db_master;
disconnect create_rout_db_slave;
connection master;
-USE test;
-DROP FUNCTION bug42217_db.upgrade_del_func;
-DROP FUNCTION bug42217_db.upgrade_alter_func;
+USE bug42217_db;
+DROP FUNCTION upgrade_del_func;
+DROP FUNCTION upgrade_alter_func;
DROP DATABASE bug42217_db;
-
-- sync_slave_with_master
-# Drop the user that was already dropped on the slave
-connection slave;
---disable_warnings
-stop slave;
-connection master;
+-- connection master
# user was already dropped in the slave before
# so we should not replicate this statement.
@@ -218,8 +213,6 @@ SET SQL_LOG_BIN= 0;
DROP USER 'create_rout_db'@'localhost';
SET SQL_LOG_BIN= 1;
---enable_warnings
-
# finish entire clean up (remove binlogs)
# so that we leave a pristine environment for the
# following tests
diff --git a/mysql-test/suite/rpl/t/rpl_row_flsh_tbls.test b/mysql-test/suite/rpl/t/rpl_row_flsh_tbls.test
index 1d33962ad48..2e58f426f14 100644
--- a/mysql-test/suite/rpl/t/rpl_row_flsh_tbls.test
+++ b/mysql-test/suite/rpl/t/rpl_row_flsh_tbls.test
@@ -1,7 +1,7 @@
# depends on the binlog output
-- source include/have_binlog_format_row.inc
-let $rename_event_pos= 926;
+let $rename_event_pos= 912;
# Bug#18326: Do not lock table for writing during prepare of statement
# The use of the ps protocol causes extra table maps in the binlog, so
diff --git a/mysql-test/suite/rpl/t/rpl_stm_flsh_tbls.test b/mysql-test/suite/rpl/t/rpl_stm_flsh_tbls.test
index d8a3ad23b66..de021f3e3e1 100644
--- a/mysql-test/suite/rpl/t/rpl_stm_flsh_tbls.test
+++ b/mysql-test/suite/rpl/t/rpl_stm_flsh_tbls.test
@@ -1,5 +1,5 @@
# depends on the binlog output
--source include/have_binlog_format_mixed_or_statement.inc
-let $rename_event_pos= 959;
+let $rename_event_pos= 945;
-- source extra/rpl_tests/rpl_flsh_tbls.test
diff --git a/mysql-test/suite/rpl/t/rpl_stm_maria.test b/mysql-test/suite/rpl/t/rpl_stm_maria.test
index 6a37e390716..5c531a32d80 100644
--- a/mysql-test/suite/rpl/t/rpl_stm_maria.test
+++ b/mysql-test/suite/rpl/t/rpl_stm_maria.test
@@ -54,3 +54,5 @@ sync_slave_with_master;
connection master;
drop table t1,t2,t3;
sync_slave_with_master;
+
+--source include/rpl_end.inc
diff --git a/mysql-test/suite/rpl/t/rpl_table_options.test b/mysql-test/suite/rpl/t/rpl_table_options.test
index b3d75bb0f95..27eb0e393d2 100644
--- a/mysql-test/suite/rpl/t/rpl_table_options.test
+++ b/mysql-test/suite/rpl/t/rpl_table_options.test
@@ -29,3 +29,5 @@ drop table t1;
set storage_engine=default;
select 1;
uninstall plugin example;
+
+source include/rpl_end.inc;
diff --git a/mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test b/mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test
index 63f0b6c2234..4b94dae3de9 100644
--- a/mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test
+++ b/mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test
@@ -97,7 +97,7 @@ sync_slave_with_master;
-- connection master
# action: setup environment
-CREATE TABLE t1 (a int);
+CREATE TABLE t1 (a int) engine=innodb;
CREATE TABLE t2 ( i1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (i1) );
CREATE TABLE t3 ( i1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (i1) );
CREATE TRIGGER tr1 AFTER DELETE ON t2 FOR EACH ROW INSERT INTO t3 () VALUES ();
@@ -193,7 +193,7 @@ DROP TEMPORARY TABLE t1;
--echo # The rows event will binlogged before 'DROP TEMPORARY TABLE t1',
--echo # as t1 is non-transactional table
-INSERT INTO t1 VALUES(Rand());
+INSERT INTO t1 SELECT Rand();
COMMIT;
source include/show_binlog_events.inc;
diff --git a/mysql-test/suite/sys_vars/r/multi_range_count_basic_64.result b/mysql-test/suite/sys_vars/r/multi_range_count_basic_64.result
index 29019ca5971..d110188b3f6 100644
--- a/mysql-test/suite/sys_vars/r/multi_range_count_basic_64.result
+++ b/mysql-test/suite/sys_vars/r/multi_range_count_basic_64.result
@@ -8,84 +8,122 @@ SELECT @start_session_value;
256
'#--------------------FN_DYNVARS_090_01-------------------------#'
SET @@global.multi_range_count = 100;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SET @@global.multi_range_count = DEFAULT;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@global.multi_range_count;
@@global.multi_range_count
256
SET @@session.multi_range_count = 200;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SET @@session.multi_range_count = DEFAULT;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@session.multi_range_count;
@@session.multi_range_count
256
'#--------------------FN_DYNVARS_090_02-------------------------#'
SET @@global.multi_range_count = DEFAULT;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@global.multi_range_count = 256;
@@global.multi_range_count = 256
1
SET @@session.multi_range_count = DEFAULT;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@session.multi_range_count = 256;
@@session.multi_range_count = 256
1
'#--------------------FN_DYNVARS_090_03-------------------------#'
SET @@global.multi_range_count = 1;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@global.multi_range_count;
@@global.multi_range_count
1
SET @@global.multi_range_count = 60020;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@global.multi_range_count;
@@global.multi_range_count
60020
SET @@global.multi_range_count = 65535;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@global.multi_range_count;
@@global.multi_range_count
65535
SET @@global.multi_range_count = 4294967295;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@global.multi_range_count;
@@global.multi_range_count
4294967295
SET @@global.multi_range_count = 4294967294;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@global.multi_range_count;
@@global.multi_range_count
4294967294
'#--------------------FN_DYNVARS_090_04-------------------------#'
SET @@session.multi_range_count = 1;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@session.multi_range_count;
@@session.multi_range_count
1
SET @@session.multi_range_count = 50050;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@session.multi_range_count;
@@session.multi_range_count
50050
SET @@session.multi_range_count = 65535;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@session.multi_range_count;
@@session.multi_range_count
65535
SET @@session.multi_range_count = 4294967295;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@session.multi_range_count;
@@session.multi_range_count
4294967295
SET @@session.multi_range_count = 4294967294;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@session.multi_range_count;
@@session.multi_range_count
4294967294
'#------------------FN_DYNVARS_090_05-----------------------#'
SET @@global.multi_range_count = 0;
Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
Warning 1292 Truncated incorrect multi_range_count value: '0'
SELECT @@global.multi_range_count;
@@global.multi_range_count
1
SET @@global.multi_range_count = 4294967296;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@global.multi_range_count;
@@global.multi_range_count
4294967296
SET @@global.multi_range_count = -1024;
Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
Warning 1292 Truncated incorrect multi_range_count value: '-1024'
SELECT @@global.multi_range_count;
@@global.multi_range_count
1
SET @@global.multi_range_count = 429496729500;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@global.multi_range_count;
@@global.multi_range_count
429496729500
@@ -101,16 +139,20 @@ SELECT @@global.multi_range_count;
429496729500
SET @@session.multi_range_count = 0;
Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
Warning 1292 Truncated incorrect multi_range_count value: '0'
SELECT @@session.multi_range_count;
@@session.multi_range_count
1
SET @@session.multi_range_count = 4294967296;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@session.multi_range_count;
@@session.multi_range_count
4294967296
SET @@session.multi_range_count = -1;
Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
Warning 1292 Truncated incorrect multi_range_count value: '-1'
SELECT @@session.multi_range_count;
@@session.multi_range_count
@@ -118,6 +160,8 @@ SELECT @@session.multi_range_count;
SET @@session.multi_range_count = 65530.34.;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.' at line 1
SET @@session.multi_range_count = 4294967295021;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@session.multi_range_count;
@@session.multi_range_count
4294967295021
@@ -141,22 +185,29 @@ WHERE VARIABLE_NAME='multi_range_count';
1
'#------------------FN_DYNVARS_090_08-----------------------#'
SET @@global.multi_range_count = TRUE;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@global.multi_range_count;
@@global.multi_range_count
1
SET @@global.multi_range_count = FALSE;
Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
Warning 1292 Truncated incorrect multi_range_count value: '0'
SELECT @@global.multi_range_count;
@@global.multi_range_count
1
'#---------------------FN_DYNVARS_090_09----------------------#'
SET @@global.multi_range_count = 10;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@multi_range_count = @@global.multi_range_count;
@@multi_range_count = @@global.multi_range_count
0
'#---------------------FN_DYNVARS_090_10----------------------#'
SET @@multi_range_count = 100;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@multi_range_count = @@local.multi_range_count;
@@multi_range_count = @@local.multi_range_count
1
@@ -165,6 +216,8 @@ SELECT @@local.multi_range_count = @@session.multi_range_count;
1
'#---------------------FN_DYNVARS_090_11----------------------#'
SET multi_range_count = 1;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@multi_range_count;
@@multi_range_count
1
@@ -175,10 +228,14 @@ ERROR 42S02: Unknown table 'session' in field list
SELECT multi_range_count = @@session.multi_range_count;
ERROR 42S22: Unknown column 'multi_range_count' in 'field list'
SET @@global.multi_range_count = @start_global_value;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@global.multi_range_count;
@@global.multi_range_count
256
SET @@session.multi_range_count = @start_session_value;
+Warnings:
+Warning 1287 The syntax '@@multi_range_count' is deprecated and will be removed in MySQL 5.7. Please use '@@mrr_buffer_size' instead
SELECT @@session.multi_range_count;
@@session.multi_range_count
256
diff --git a/mysql-test/suite/sys_vars/r/sql_big_selects_func.result b/mysql-test/suite/sys_vars/r/sql_big_selects_func.result
index 77a38e1b928..72631dbb1d5 100644
--- a/mysql-test/suite/sys_vars/r/sql_big_selects_func.result
+++ b/mysql-test/suite/sys_vars/r/sql_big_selects_func.result
@@ -5,7 +5,7 @@ SET @session_max_join_size = @@SESSION.max_join_size;
SET @global_max_join_size = @@GLOBAL.max_join_size;
SET SQL_MAX_JOIN_SIZE=9;
Warnings:
-Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
+Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0. Please use '@@max_join_size' instead
CREATE TEMPORARY TABLE t1(a varchar(20) not null, b varchar(20));
CREATE TEMPORARY TABLE t2(a varchar(20) null, b varchar(20));
INSERT INTO t1 VALUES('aa','bb');
diff --git a/mysql-test/suite/sys_vars/r/sql_max_join_size_basic.result b/mysql-test/suite/sys_vars/r/sql_max_join_size_basic.result
index 8ec2a60887f..7248b7a802f 100644
--- a/mysql-test/suite/sys_vars/r/sql_max_join_size_basic.result
+++ b/mysql-test/suite/sys_vars/r/sql_max_join_size_basic.result
@@ -22,10 +22,10 @@ VARIABLE_NAME VARIABLE_VALUE
SQL_MAX_JOIN_SIZE 18446744073709551615
set global sql_max_join_size=10;
Warnings:
-Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
+Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0. Please use '@@max_join_size' instead
set session sql_max_join_size=20;
Warnings:
-Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
+Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0. Please use '@@max_join_size' instead
select @@global.sql_max_join_size;
@@global.sql_max_join_size
10
@@ -55,19 +55,19 @@ select @@sql_big_selects;
0
set sql_max_join_size=cast(-1 as unsigned int);
Warnings:
-Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
+Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0. Please use '@@max_join_size' instead
select @@sql_big_selects;
@@sql_big_selects
1
set sql_max_join_size=100;
Warnings:
-Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
+Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0. Please use '@@max_join_size' instead
select @@sql_big_selects;
@@sql_big_selects
0
SET @@global.sql_max_join_size = @start_global_value;
Warnings:
-Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
+Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0. Please use '@@max_join_size' instead
SELECT @@global.sql_max_join_size;
@@global.sql_max_join_size
18446744073709551615
diff --git a/mysql-test/suite/sys_vars/r/sql_max_join_size_func.result b/mysql-test/suite/sys_vars/r/sql_max_join_size_func.result
index 0720f5dc965..0dc85925c6b 100644
--- a/mysql-test/suite/sys_vars/r/sql_max_join_size_func.result
+++ b/mysql-test/suite/sys_vars/r/sql_max_join_size_func.result
@@ -17,7 +17,7 @@ INSERT INTO t2 VALUES('aa4','bb');
'#--------------------FN_DYNVARS_161_01-------------------------#'
SET SESSION sql_max_join_size=9;
Warnings:
-Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
+Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0. Please use '@@max_join_size' instead
SELECT * FROM t1 INNER JOIN t2 ON t1.a = t2.a;
ERROR 42000: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is okay
Expected error The SELECT would examine more than MAX_JOIN_SIZE rows.
@@ -33,7 +33,7 @@ aa4 bb aa4 bb
This should work
SET SESSION sql_max_join_size=DEFAULT;
Warnings:
-Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
+Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0. Please use '@@max_join_size' instead
DELETE FROM t2 WHERE a = 'aa4';
SELECT * FROM t1 INNER JOIN t2 ON t1.a = t2.a;
a b a b
@@ -45,7 +45,7 @@ This should work
'#----------------------------FN_DYNVARS_136_05-------------------------#'
SET GLOBAL sql_max_join_size = 4;
Warnings:
-Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
+Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0. Please use '@@max_join_size' instead
** Connecting con_int1 using root **
** Connection con_int1 **
SELECT @@SESSION.sql_max_join_size;
@@ -54,7 +54,7 @@ SELECT @@SESSION.sql_max_join_size;
4 Expected
SET SESSION sql_max_join_size = 2;
Warnings:
-Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
+Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0. Please use '@@max_join_size' instead
** Connecting con_int2 using root **
** Connection con_int2 **
SELECT @@SESSION.sql_max_join_size;
@@ -63,7 +63,7 @@ SELECT @@SESSION.sql_max_join_size;
4 Expected
SET SESSION sql_max_join_size = 10;
Warnings:
-Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
+Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0. Please use '@@max_join_size' instead
** Connection con_int2 **
SELECT @@SESSION.sql_max_join_size;
@@SESSION.sql_max_join_size
@@ -82,10 +82,10 @@ SELECT @@GLOBAL.sql_max_join_size;
Disconnecting Connections con_int1, con_int2
SET @@SESSION.sql_max_join_size = @session_max_join_size;
Warnings:
-Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
+Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0. Please use '@@max_join_size' instead
SET @@GLOBAL.sql_max_join_size = @global_max_join_size ;
Warnings:
-Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
+Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0. Please use '@@max_join_size' instead
SET @@SESSION.sql_big_selects = @session_sql_big_selects;
DROP TABLE t1;
DROP TABLE t2;
diff --git a/mysql-test/suite/sys_vars/t/maria_used_for_temp_tables_basic.test b/mysql-test/suite/sys_vars/t/maria_used_for_temp_tables_basic.test
index 504e2dfbcb5..a2bec4660af 100644
--- a/mysql-test/suite/sys_vars/t/maria_used_for_temp_tables_basic.test
+++ b/mysql-test/suite/sys_vars/t/maria_used_for_temp_tables_basic.test
@@ -9,7 +9,9 @@ select @@global.maria_used_for_temp_tables, @@global.aria_used_for_temp_tables;
select @@session.maria_used_for_temp_tables, @@session.aria_used_for_temp_tables;
show global variables like '%aria_used_for_temp_tables';
show session variables like '%aria_used_for_temp_tables';
+--sorted_result
select * from information_schema.global_variables where variable_name like '%aria_used_for_temp_tables';
+--sorted_result
select * from information_schema.session_variables where variable_name like '%aria_used_for_temp_tables';
#
diff --git a/mysql-test/suite/sys_vars/t/plugin_dir_basic.test b/mysql-test/suite/sys_vars/t/plugin_dir_basic.test
index 24dc15b646e..8bb231c2c5e 100644
--- a/mysql-test/suite/sys_vars/t/plugin_dir_basic.test
+++ b/mysql-test/suite/sys_vars/t/plugin_dir_basic.test
@@ -7,7 +7,7 @@
# on unix it's <basedir>/lib/mysql/plugin
# unless mtr sets it to $MYSQL_TEST_DIR/var/plugins
#
-let plugindir=$MYSQL_TEST_DIR/var;
+let plugindir=$MYSQLTEST_VARDIR;
--replace_result $plugindir MYSQL_LIBDIR $MYSQL_LIBDIR MYSQL_LIBDIR /mysql/ /
select @@global.plugin_dir;
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
diff --git a/mysql-test/suite/vcol/r/rpl_vcol.result b/mysql-test/suite/vcol/r/rpl_vcol.result
index f552d16d1c0..120ce38031f 100644
--- a/mysql-test/suite/vcol/r/rpl_vcol.result
+++ b/mysql-test/suite/vcol/r/rpl_vcol.result
@@ -1,10 +1,6 @@
SET @@session.storage_engine = 'InnoDB';
-stop slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-reset master;
-reset slave;
-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
-start slave;
+include/master-slave.inc
+[connection master]
create table t1 (a int, b int as (a+1));
show create table t1;
Table Create Table
@@ -23,3 +19,4 @@ a b
1 2
2 3
drop table t1;
+include/rpl_end.inc
diff --git a/mysql-test/suite/vcol/r/vcol_ins_upd_myisam.result b/mysql-test/suite/vcol/r/vcol_ins_upd_myisam.result
index 3628139bd03..2a66c6a930c 100644
--- a/mysql-test/suite/vcol/r/vcol_ins_upd_myisam.result
+++ b/mysql-test/suite/vcol/r/vcol_ins_upd_myisam.result
@@ -25,8 +25,8 @@ a b c
# INSERT INTO tbl_name VALUES... a non-NULL value is specified against vcols
insert into t1 values (1,2,3);
Warnings:
-Warning 1703 The value specified for computed column 'b' in table 't1' ignored
-Warning 1703 The value specified for computed column 'c' in table 't1' ignored
+Warning 1718 The value specified for computed column 'b' in table 't1' ignored
+Warning 1718 The value specified for computed column 'c' in table 't1' ignored
select * from t1;
a b c
1 -1 -1
@@ -65,8 +65,8 @@ a b c
# against vcols
insert into t1 (a,b) values (1,3), (2,4);
Warnings:
-Warning 1703 The value specified for computed column 'b' in table 't1' ignored
-Warning 1703 The value specified for computed column 'b' in table 't1' ignored
+Warning 1718 The value specified for computed column 'b' in table 't1' ignored
+Warning 1718 The value specified for computed column 'b' in table 't1' ignored
select * from t1;
a b c
1 -1 -1
@@ -107,8 +107,8 @@ a b c
create table t2 like t1;
insert into t2 select * from t1;
Warnings:
-Warning 1703 The value specified for computed column 'b' in table 't2' ignored
-Warning 1703 The value specified for computed column 'c' in table 't2' ignored
+Warning 1718 The value specified for computed column 'b' in table 't2' ignored
+Warning 1718 The value specified for computed column 'c' in table 't2' ignored
select * from t1;
a b c
2 -2 -2
@@ -123,8 +123,8 @@ a b c
create table t2 like t1;
insert into t2 (a,b) select a,b from t1;
Warnings:
-Warning 1703 The value specified for computed column 'b' in table 't2' ignored
-Warning 1703 The value specified for computed column 'b' in table 't2' ignored
+Warning 1718 The value specified for computed column 'b' in table 't2' ignored
+Warning 1718 The value specified for computed column 'b' in table 't2' ignored
select * from t2;
a b c
2 -2 -2
@@ -159,7 +159,7 @@ a b c
2 -2 -2
update t1 set c=3 where a=2;
Warnings:
-Warning 1703 The value specified for computed column 'c' in table 't1' ignored
+Warning 1718 The value specified for computed column 'c' in table 't1' ignored
select * from t1;
a b c
1 -1 -1
@@ -189,7 +189,7 @@ a b c
2 -2 -2
update t1 set c=3 where b=-2;
Warnings:
-Warning 1703 The value specified for computed column 'c' in table 't1' ignored
+Warning 1718 The value specified for computed column 'c' in table 't1' ignored
select * from t1;
a b c
1 -1 -1
diff --git a/mysql-test/suite/vcol/r/vcol_misc.result b/mysql-test/suite/vcol/r/vcol_misc.result
index 0cdd0029b85..f1d1045db13 100644
--- a/mysql-test/suite/vcol/r/vcol_misc.result
+++ b/mysql-test/suite/vcol/r/vcol_misc.result
@@ -108,10 +108,10 @@ DROP TABLE t1,t2;
CREATE TABLE t1 (p int, a double NOT NULL, v double AS (ROUND(a,p)) VIRTUAL);
INSERT INTO t1 VALUES (0,1,0);
Warnings:
-Warning 1703 The value specified for computed column 'v' in table 't1' ignored
+Warning 1718 The value specified for computed column 'v' in table 't1' ignored
INSERT INTO t1 VALUES (NULL,0,0);
Warnings:
-Warning 1703 The value specified for computed column 'v' in table 't1' ignored
+Warning 1718 The value specified for computed column 'v' in table 't1' ignored
SELECT a, p, v, ROUND(a,p), ROUND(a,p+NULL) FROM t1;
a p v ROUND(a,p) ROUND(a,p+NULL)
1 0 1 1 NULL
diff --git a/mysql-test/suite/vcol/t/rpl_vcol.test b/mysql-test/suite/vcol/t/rpl_vcol.test
index 2ac31f5ba35..adffecb4ae3 100644
--- a/mysql-test/suite/vcol/t/rpl_vcol.test
+++ b/mysql-test/suite/vcol/t/rpl_vcol.test
@@ -67,3 +67,5 @@ sync_with_master;
#------------------------------------------------------------------------------#
# Cleanup
--source suite/vcol/inc/vcol_cleanup.inc
+--source include/rpl_end.inc
+
diff --git a/mysql-test/t/bootstrap.test b/mysql-test/t/bootstrap.test
index 2a293ed844b..405c24a6d74 100644
--- a/mysql-test/t/bootstrap.test
+++ b/mysql-test/t/bootstrap.test
@@ -57,6 +57,7 @@ drop table t1;
# need the --skip-innodb option present for the test to succeed
SHOW VARIABLES LIKE 'have_innodb';
-SELECT SUPPORT FROM INFORMATION_SCHEMA.ENGINES WHERE engine='innodb';
+SELECT 'bug' as '' FROM INFORMATION_SCHEMA.ENGINES WHERE engine='innodb'
+ and SUPPORT='YES';
--echo End of 5.5 tests
diff --git a/mysql-test/t/disabled.def b/mysql-test/t/disabled.def
index a2a91fab680..52b23e62dcb 100644
--- a/mysql-test/t/disabled.def
+++ b/mysql-test/t/disabled.def
@@ -19,3 +19,4 @@ create-big : Bug#11748731 2010-11-15 mattiasj was not tested
archive-big : Bug#11817185 2011-03-10 Anitha Disabled since this leads to timeout on Solaris Sparc
log_tables-big : Bug#11756699 2010-11-15 mattiasj report already exists
mysql_embedded : Bug#12561297 2011-06-15 New test failing on all platforms
+tablespace : disabled in MariaDB
diff --git a/mysql-test/t/file_contents.test b/mysql-test/t/file_contents.test
index 33cd65fb2b4..f32b4f6f08b 100644
--- a/mysql-test/t/file_contents.test
+++ b/mysql-test/t/file_contents.test
@@ -11,7 +11,7 @@
--perl
print "\nChecking 'INFO_SRC' and 'INFO_BIN'\n";
$dir_bin = $ENV{'MYSQL_BINDIR'};
-if ($dir_bin =~ m|/usr/|) {
+if ($dir_bin eq '/usr/') {
# RPM package
$dir_docs = $dir_bin;
$dir_docs =~ s|/lib|/share/doc|;
@@ -22,7 +22,7 @@ if ($dir_bin =~ m|/usr/|) {
# RedHat: version number in directory name
$dir_docs = glob "$dir_docs/MySQL-server*";
}
-} elsif ($dir_bin =~ m|/usr$|) {
+} elsif ($dir_bin eq '/usr') {
# RPM build during development
$dir_docs = "$dir_bin/share/doc";
if(-d "$dir_docs/packages/MySQL-server") {
diff --git a/mysql-test/t/insert_select.test b/mysql-test/t/insert_select.test
index b2f3c14aa13..9aed425e0cb 100644
--- a/mysql-test/t/insert_select.test
+++ b/mysql-test/t/insert_select.test
@@ -413,7 +413,7 @@ SET GLOBAL myisam_data_pointer_size = 2;
INSERT INTO t1 VALUES (1), (2), (3), (4), (5);
call mtr.add_suppression("mysqld.*: The table '.*#sql.*' is full");
---error ER_RECORD_FILE_FULL,ER_RECORD_FILE_FULL
+--error 0,ER_RECORD_FILE_FULL,ER_RECORD_FILE_FULL
INSERT IGNORE INTO t1 SELECT t1.a FROM t1,t1 t2,t1 t3,t1 t4,t1 t5,t1 t6,t1 t7;
# Cleanup
diff --git a/mysql-test/t/join_outer.test b/mysql-test/t/join_outer.test
index 3a6c09f9ba7..54d3b8d997d 100644
--- a/mysql-test/t/join_outer.test
+++ b/mysql-test/t/join_outer.test
@@ -19,9 +19,11 @@ select t1.*,t2.* from t1 JOIN t2 where t1.a=t2.a;
select t1.*,t2.* from t1 left join t2 on (t1.a=t2.a) order by t1.grp,t1.a,t2.c;
select t1.*,t2.* from { oj t2 left outer join t1 on (t1.a=t2.a) };
select t1.*,t2.* from t1 as t0,{ oj t2 left outer join t1 on (t1.a=t2.a) } WHERE t0.a=2;
+--sorted_result
select t1.*,t2.* from t1 left join t2 using (a);
select t1.*,t2.* from t1 left join t2 using (a) where t1.a=t2.a;
select t1.*,t2.* from t1 left join t2 using (a,c);
+--sorted_result
select t1.*,t2.* from t1 left join t2 using (c);
select t1.*,t2.* from t1 natural left outer join t2;
@@ -31,6 +33,7 @@ select t1.*,t2.* from t1 left join t2 on (t1.a=t2.a) where t2.id is null;
explain select t1.*,t2.* from t1,t2 where t1.a=t2.a and isnull(t2.a)=1;
explain select t1.*,t2.* from t1 left join t2 on t1.a=t2.a where isnull(t2.a)=1;
+--sorted_result
select t1.*,t2.*,t3.a from t1 left join t2 on (t1.a=t2.a) left join t1 as t3 on (t2.a=t3.a);
# The next query should rearange the left joins to get this to work
@@ -201,6 +204,7 @@ INSERT INTO t4 VALUES (1,-1,10360,1);
INSERT INTO t4 VALUES (2,-1,10361,1);
INSERT INTO t4 VALUES (3,-1,10362,1);
+--sorted_result
SELECT DISTINCT fill,desc_larga_cat,cred_total,Grup,Places,PlacesOcupades FROM t4 LEFT JOIN t3 ON t3.cod_asig=fill AND estat='S' AND dni_pasaporte='11111111' AND t3.idPla=1 , t2,t1 WHERE fill=t1.cod_asig AND Places>PlacesOcupades AND fill=idAssignatura AND t4.idPla=1 AND papa=-1;
SELECT DISTINCT fill,t3.idPla FROM t4 LEFT JOIN t3 ON t3.cod_asig=t4.fill AND t3.estat='S' AND t3.dni_pasaporte='1234' AND t3.idPla=1 ;
@@ -233,20 +237,25 @@ INSERT INTO t2 VALUES (1,1,'El Gato');
INSERT INTO t2 VALUES (2,1,'Perrito');
INSERT INTO t2 VALUES (3,3,'Happy');
+--sorted_result
select t1.name, t2.name, t2.id from t1 left join t2 on (t1.id = t2.owner);
select t1.name, t2.name, t2.id from t1 left join t2 on (t1.id = t2.owner) where t2.id is null;
explain select t1.name, t2.name, t2.id from t1 left join t2 on (t1.id = t2.owner) where t2.id is null;
explain select t1.name, t2.name, t2.id from t1 left join t2 on (t1.id = t2.owner) where t2.name is null;
select count(*) from t1 left join t2 on (t1.id = t2.owner);
+--sorted_result
select t1.name, t2.name, t2.id from t2 right join t1 on (t1.id = t2.owner);
select t1.name, t2.name, t2.id from t2 right join t1 on (t1.id = t2.owner) where t2.id is null;
explain select t1.name, t2.name, t2.id from t2 right join t1 on (t1.id = t2.owner) where t2.id is null;
explain select t1.name, t2.name, t2.id from t2 right join t1 on (t1.id = t2.owner) where t2.name is null;
select count(*) from t2 right join t1 on (t1.id = t2.owner);
+--sorted_result
select t1.name, t2.name, t2.id,t3.id from t2 right join t1 on (t1.id = t2.owner) left join t1 as t3 on t3.id=t2.owner;
+--sorted_result
select t1.name, t2.name, t2.id,t3.id from t1 right join t2 on (t1.id = t2.owner) right join t1 as t3 on t3.id=t2.owner;
+--sorted_result
select t1.name, t2.name, t2.id, t2.owner, t3.id from t1 left join t2 on (t1.id = t2.owner) right join t1 as t3 on t3.id=t2.owner;
drop table t1,t2;
@@ -421,6 +430,7 @@ insert into t1 (fooID) values (10),(20),(30);
insert into t2 values (10,1),(20,2),(30,3);
explain select * from t2 left join t1 on t1.fooID = t2.fooID and t1.fooID = 30;
select * from t2 left join t1 on t1.fooID = t2.fooID and t1.fooID = 30;
+--sorted_result
select * from t2 left join t1 ignore index(primary) on t1.fooID = t2.fooID and t1.fooID = 30;
drop table t1,t2;
@@ -430,10 +440,13 @@ create table t3 (i int);
insert into t1 values(1),(2);
insert into t2 values(2),(3);
insert into t3 values(2),(4);
+--sorted_result
select * from t1 natural left join t2 natural left join t3;
select * from t1 natural left join t2 where (t2.i is not null)=0;
+--sorted_result
select * from t1 natural left join t2 where (t2.i is not null) is not null;
select * from t1 natural left join t2 where (i is not null)=0;
+--sorted_result
select * from t1 natural left join t2 where (i is not null) is not null;
drop table t1,t2,t3;
@@ -730,11 +743,16 @@ SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE t2.b <= t1.a AND t1.a <= t1.b
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE t1.a BETWEEN t2.b AND t1.b;
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE NOT(t1.a NOT BETWEEN t2.b AND t1.b);
+--sorted_result
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE t2.b > t1.a OR t1.a > t1.b;
+--sorted_result
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE t1.a NOT BETWEEN t2.b AND t1.b;
+--sorted_result
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE NOT(t1.a BETWEEN t2.b AND t1.b);
+--sorted_result
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE t1.a = t2.a OR t2.b > t1.a OR t1.a > t1.b;
+--sorted_result
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE NOT(t1.a != t2.a AND t1.a BETWEEN t2.b AND t1.b);
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.a WHERE t1.a = t2.a AND (t2.b > t1.a OR t1.a > t1.b);
@@ -801,11 +819,16 @@ CREATE TABLE t2 (b int);
INSERT INTO t1 VALUES (1), (2), (3), (4);
INSERT INTO t2 VALUES (2), (3);
+--sorted_result
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.b WHERE (1=1);
+--sorted_result
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.b WHERE (1 OR 1);
+--sorted_result
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.b WHERE (0 OR 1);
+--sorted_result
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.b WHERE (1=1 OR 2=2);
+--sorted_result
SELECT * FROM t1 LEFT JOIN t2 ON t1.a = t2.b WHERE (1=1 OR 1=0);
DROP TABLE t1,t2;
@@ -1108,6 +1131,7 @@ INSERT INTO t3 VALUES (0),(1),(2), (4);
CREATE TABLE t4 (i INT NOT NULL);
INSERT INTO t4 VALUES (0),(1),(2),(3) ;
+--sorted_result
SELECT * FROM
t1 LEFT JOIN
( t2 LEFT JOIN
@@ -1120,6 +1144,7 @@ SELECT * FROM
ON t2.i = t1.i
;
+--sorted_result
SELECT * FROM
t1 LEFT JOIN
( t2 LEFT JOIN
@@ -1135,6 +1160,7 @@ SELECT * FROM
# Most simplified testcase to reproduce the bug.
# (Has to be at least a two level nested outer join)
+--sorted_result
SELECT * FROM
t1 LEFT JOIN
( ( t2 LEFT JOIN
@@ -1150,6 +1176,7 @@ SELECT * FROM
# We then add some equi-join inside the query above:
# (There Used to be some problems here with first
# proposed patch for this bug)
+--sorted_result
SELECT * FROM
t1 LEFT JOIN
( ( t2 LEFT JOIN
@@ -1162,6 +1189,7 @@ SELECT * FROM
ON t2.i = t1.i
WHERE t3.i IS NULL;
+--sorted_result
SELECT * FROM
t1 LEFT JOIN
( ( t2 LEFT JOIN
@@ -1174,6 +1202,7 @@ SELECT * FROM
ON t2.i = t1.i
WHERE t3.i IS NULL;
+--sorted_result
SELECT * FROM
t1 LEFT JOIN
( ( t2 LEFT JOIN
@@ -1205,6 +1234,7 @@ CREATE TABLE k (pk INT NOT NULL, col_int_key INT);
INSERT INTO k VALUES (1,9),(2,2),(3,5),(4,2),(5,7),(6,0),(7,5);
# Baseline query wo/ 'WHERE ... IS NULL' - was correct
+--sorted_result
SELECT TABLE1.pk FROM k TABLE1
RIGHT JOIN h TABLE2 ON TABLE1.col_int_key=TABLE2.col_int_key
RIGHT JOIN m TABLE4 ON TABLE2.col_int_key=TABLE4.col_int_key;
diff --git a/mysql-test/t/mysql_client_test-master.opt b/mysql-test/t/mysql_client_test-master.opt
index 3dfaf15666f..d2db22b8634 100644
--- a/mysql-test/t/mysql_client_test-master.opt
+++ b/mysql-test/t/mysql_client_test-master.opt
@@ -1,4 +1,3 @@
--log=$MYSQLTEST_VARDIR/log/master.log
--log-output=FILE,TABLE
-$PLUGIN_AUTH_OPT
-$PLUGIN_AUTH_LOAD
+--plugin-load=$AUTH_TEST_PLUGIN_SO
diff --git a/mysql-test/t/mysql_client_test.test b/mysql-test/t/mysql_client_test.test
index 529d60517c0..7b689a751df 100644
--- a/mysql-test/t/mysql_client_test.test
+++ b/mysql-test/t/mysql_client_test.test
@@ -14,7 +14,7 @@ SET @old_slow_query_log= @@global.slow_query_log;
# var/log/mysql_client_test.trace
--exec echo "$MYSQL_CLIENT_TEST" > $MYSQLTEST_VARDIR/log/mysql_client_test.out.log 2>&1
---exec $MYSQL_CLIENT_TEST --getopt-ll-test=25600M $PLUGIN_AUTH_CLIENT_OPT >> $MYSQLTEST_VARDIR/log/mysql_client_test.out.log 2>&1
+--exec $MYSQL_CLIENT_TEST --getopt-ll-test=25600M --plugin-dir=$MYSQLTEST_VARDIR/plugins >> $MYSQLTEST_VARDIR/log/mysql_client_test.out.log 2>&1
# End of 4.1 tests
echo ok;
diff --git a/mysql-test/t/mysqladmin.test b/mysql-test/t/mysqladmin.test
index 4811c5fdbc6..c04c8d50f3c 100644
--- a/mysql-test/t/mysqladmin.test
+++ b/mysql-test/t/mysqladmin.test
@@ -4,35 +4,21 @@
# Test "mysqladmin ping"
#
---exec $MYSQLADMIN --no-defaults --default-character-set=latin1 -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= ping 2>&1
+--exec $MYSQLADMIN --default-character-set=latin1 -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= ping 2>&1
#
# Bug#10608 mysqladmin breaks on "database" variable in my.cnf
#
-# When mysqladmin finds database in .cnf file it shall fail
---write_file $MYSQLTEST_VARDIR/tmp/bug10608.cnf
-[client]
-database=db1
-EOF
-
--replace_regex /.*mysqladmin.*: unknown/mysqladmin: unknown/
--error 7
---exec $MYSQLADMIN --defaults-file=$MYSQLTEST_VARDIR/tmp/bug10608.cnf --default-character-set=latin1 -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= ping 2>&1
-remove_file $MYSQLTEST_VARDIR/tmp/bug10608.cnf;
+--exec $MYSQLADMIN --database=db1 --default-character-set=latin1 -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= ping 2>&1
-# When mysqladmin finds "loose-database" in .cnf file it shall print
+# When mysqladmin finds "loose-database" it shall print
# a warning and continue
---write_file $MYSQLTEST_VARDIR/tmp/bug10608.cnf
-[client]
-loose-database=db2
-EOF
-
--replace_regex /Warning: .*mysqladmin.*: unknown/Warning: mysqladmin: unknown/
---exec $MYSQLADMIN --defaults-file=$MYSQLTEST_VARDIR/tmp/bug10608.cnf --default-character-set=latin1 -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= ping 2>&1
-
-remove_file $MYSQLTEST_VARDIR/tmp/bug10608.cnf;
+--exec $MYSQLADMIN --loose-database=db2 --default-character-set=latin1 -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= ping 2>&1
--echo #
--echo # Bug#58221 : mysqladmin --sleep=x --count=x keeps looping
diff --git a/mysql-test/t/plugin_auth-master.opt b/mysql-test/t/plugin_auth-master.opt
index 3536d102387..ff91abb1bef 100644
--- a/mysql-test/t/plugin_auth-master.opt
+++ b/mysql-test/t/plugin_auth-master.opt
@@ -1,2 +1 @@
-$PLUGIN_AUTH_OPT
-$PLUGIN_AUTH_LOAD
+--plugin-load=$AUTH_TEST_PLUGIN_SO
diff --git a/mysql-test/t/plugin_auth.test b/mysql-test/t/plugin_auth.test
index a81cf4e4783..16c96fa0c21 100644
--- a/mysql-test/t/plugin_auth.test
+++ b/mysql-test/t/plugin_auth.test
@@ -97,16 +97,13 @@ REVOKE ALL PRIVILEGES ON test_grant_db.* FROM new_grant_user;
--echo # try re-create existing user via GRANT IDENTIFIED BY
GRANT ALL PRIVILEGES ON test_grant_db.* TO new_grant_user
- IDENTIFIED BY 'unused_password';
+ IDENTIFIED BY 'new_password';
---echo # make sure password doesn't take precendence
---disable_query_log
+--replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK
--error ER_ACCESS_DENIED_ERROR
-connect(plug_con_grant_deny,localhost,new_grant_user,unused_password);
---enable_query_log
+connect(plug_con_grant_deny,localhost,new_grant_user,plug_dest);
---echo #make sure plugin auth still available
-connect(plug_con_grant,localhost,new_grant_user,plug_dest);
+connect(plug_con_grant,localhost,new_grant_user,new_password);
connection plug_con_grant;
select USER(),CURRENT_USER();
USE test_grant_db;
@@ -119,11 +116,9 @@ DROP USER new_grant_user;
--echo # try re-create existing user via GRANT IDENTIFIED WITH
---error ER_GRANT_PLUGIN_USER_EXISTS
GRANT ALL PRIVILEGES ON test_grant_db.* TO plug
IDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
---error ER_GRANT_PLUGIN_USER_EXISTS
GRANT ALL PRIVILEGES ON test_grant_db.* TO plug_dest
IDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
@@ -400,16 +395,16 @@ FLUSH PRIVILEGES;
--echo #
--echo # Executing 'mysql'
---exec $MYSQL -u root -S $MASTER_MYSOCK -P $MASTER_MYPORT --default-auth=auth_test_plugin $PLUGIN_AUTH_OPT -e "SELECT 1"
+--exec $MYSQL -u root -S $MASTER_MYSOCK -P $MASTER_MYPORT --default-auth=auth_test_plugin -e "SELECT 1"
--echo # Executing 'mysqladmin'
---exec $MYSQLADMIN -u root -S $MASTER_MYSOCK -P $MASTER_MYPORT --default-auth=auth_test_plugin $PLUGIN_AUTH_OPT ping
+--exec $MYSQLADMIN -u root -S $MASTER_MYSOCK -P $MASTER_MYPORT --default-auth=auth_test_plugin ping
--echo # Executing 'mysqldump'
---exec $MYSQL_DUMP -u root -S $MASTER_MYSOCK -P $MASTER_MYPORT --compact --default-auth=auth_test_plugin $PLUGIN_AUTH_OPT test
+--exec $MYSQL_DUMP -u root -S $MASTER_MYSOCK -P $MASTER_MYPORT --compact --default-auth=auth_test_plugin test
--echo # Executing 'mysql_upgrade'
---exec $MYSQL_UPGRADE -u root -S $MASTER_MYSOCK -P $MASTER_MYPORT --default-auth=auth_test_plugin $PLUGIN_AUTH_OPT --skip-verbose --force --upgrade-system-tables
+--exec $MYSQL_UPGRADE -u root -S $MASTER_MYSOCK -P $MASTER_MYPORT --default-auth=auth_test_plugin --skip-verbose --force --upgrade-system-tables
--echo #
--echo # Bug #59657: Move the client authentication_pam plugin into the
diff --git a/mysql-test/t/plugin_auth_qa-master.opt b/mysql-test/t/plugin_auth_qa-master.opt
index 3536d102387..ff91abb1bef 100644
--- a/mysql-test/t/plugin_auth_qa-master.opt
+++ b/mysql-test/t/plugin_auth_qa-master.opt
@@ -1,2 +1 @@
-$PLUGIN_AUTH_OPT
-$PLUGIN_AUTH_LOAD
+--plugin-load=$AUTH_TEST_PLUGIN_SO
diff --git a/mysql-test/t/plugin_auth_qa.test b/mysql-test/t/plugin_auth_qa.test
index 0961c1dfef5..3a3921510e0 100644
--- a/mysql-test/t/plugin_auth_qa.test
+++ b/mysql-test/t/plugin_auth_qa.test
@@ -166,9 +166,7 @@ SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
DROP USER plug_dest;
#
CREATE USER plug IDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
---error 1700
GRANT ALL PRIVILEGES ON test_user_db.* TO plug IDENTIFIED WITH 'test_plugin_server' AS 'plug_dest';
---error 1700
GRANT ALL PRIVILEGES ON test_user_db.* TO plug IDENTIFIED WITH 'test_plugin_server';
DROP USER plug;
#
diff --git a/mysql-test/t/plugin_auth_qa_1-master.opt b/mysql-test/t/plugin_auth_qa_1-master.opt
index 3536d102387..ff91abb1bef 100644
--- a/mysql-test/t/plugin_auth_qa_1-master.opt
+++ b/mysql-test/t/plugin_auth_qa_1-master.opt
@@ -1,2 +1 @@
-$PLUGIN_AUTH_OPT
-$PLUGIN_AUTH_LOAD
+--plugin-load=$AUTH_TEST_PLUGIN_SO
diff --git a/mysql-test/t/plugin_auth_qa_1.test b/mysql-test/t/plugin_auth_qa_1.test
index 06908935b01..e5d7e5cad02 100644
--- a/mysql-test/t/plugin_auth_qa_1.test
+++ b/mysql-test/t/plugin_auth_qa_1.test
@@ -14,11 +14,11 @@ SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
CREATE USER plug_user IDENTIFIED WITH test_plugin_server AS 'plug_dest';
CREATE USER plug_dest IDENTIFIED BY 'plug_dest_passwd';
GRANT PROXY ON plug_dest TO plug_user;
---replace_result $MASTER_MYSOCK MASTER_MYSOCK $PLUGIN_AUTH_OPT PLUGIN_AUTH_OPT
---exec $MYSQL -S $MASTER_MYSOCK -u plug_user $PLUGIN_AUTH_OPT --password=plug_dest -e "SELECT current_user();SELECT user();USE test_user_db;CREATE TABLE t1(a int);SHOW TABLES;DROP TABLE t1;" 2>&1
+--replace_result $MASTER_MYSOCK MASTER_MYSOCK
+--exec $MYSQL -S $MASTER_MYSOCK -u plug_user --password=plug_dest -e "SELECT current_user();SELECT user();USE test_user_db;CREATE TABLE t1(a int);SHOW TABLES;DROP TABLE t1;" 2>&1
REVOKE PROXY ON plug_dest FROM plug_user;
--error 1
---exec $MYSQL -S $MASTER_MYSOCK -u plug_user $PLUGIN_AUTH_OPT --password=plug_dest -e "SELECT current_user();SELECT user();USE test_user_db;CREATE TABLE t1(a int);SHOW TABLES;DROP TABLE t1;" 2>&1
+--exec $MYSQL -S $MASTER_MYSOCK -u plug_user --password=plug_dest -e "SELECT current_user();SELECT user();USE test_user_db;CREATE TABLE t1(a int);SHOW TABLES;DROP TABLE t1;" 2>&1
DROP USER plug_user,plug_dest;
#
# GRANT...WITH
@@ -30,17 +30,17 @@ GRANT PROXY ON plug_dest TO plug_user;
--sorted_result
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
--echo 1)
---replace_result $MASTER_MYSOCK MASTER_MYSOCK $PLUGIN_AUTH_OPT PLUGIN_AUTH_OPT
---exec $MYSQL -S $MASTER_MYSOCK -u plug_user $PLUGIN_AUTH_OPT --password=plug_dest -e "SELECT current_user();SELECT user();USE test_user_db;CREATE TABLE t1(a int);SHOW TABLES;DROP TABLE t1;" 2>&1
+--replace_result $MASTER_MYSOCK MASTER_MYSOCK
+--exec $MYSQL -S $MASTER_MYSOCK -u plug_user --password=plug_dest -e "SELECT current_user();SELECT user();USE test_user_db;CREATE TABLE t1(a int);SHOW TABLES;DROP TABLE t1;" 2>&1
REVOKE ALL PRIVILEGES ON test_user_db.* FROM 'plug_user'
IDENTIFIED WITH test_plugin_server AS 'plug_dest';
--echo 2)
---replace_result $MASTER_MYSOCK MASTER_MYSOCK $PLUGIN_AUTH_OPT PLUGIN_AUTH_OPT
---exec $MYSQL -S $MASTER_MYSOCK -u plug_user $PLUGIN_AUTH_OPT --password=plug_dest -e "SELECT current_user();SELECT user();USE test_user_db;CREATE TABLE t1(a int);SHOW TABLES;DROP TABLE t1;" 2>&1
+--replace_result $MASTER_MYSOCK MASTER_MYSOCK
+--exec $MYSQL -S $MASTER_MYSOCK -u plug_user --password=plug_dest -e "SELECT current_user();SELECT user();USE test_user_db;CREATE TABLE t1(a int);SHOW TABLES;DROP TABLE t1;" 2>&1
REVOKE PROXY ON plug_dest FROM plug_user;
--echo 3)
--error 1
---exec $MYSQL -S $MASTER_MYSOCK -u plug_user $PLUGIN_AUTH_OPT --password=plug_dest -e "SELECT current_user();SELECT user();USE test_user_db;CREATE TABLE t1(a int);SHOW TABLES;DROP TABLE t1;" 2>&1
+--exec $MYSQL -S $MASTER_MYSOCK -u plug_user --password=plug_dest -e "SELECT current_user();SELECT user();USE test_user_db;CREATE TABLE t1(a int);SHOW TABLES;DROP TABLE t1;" 2>&1
DROP USER plug_user,plug_dest;
#
# GRANT...WITH/CREATE...BY
@@ -49,11 +49,11 @@ GRANT ALL PRIVILEGES ON test_user_db.* TO plug_user
CREATE USER plug_dest IDENTIFIED BY 'plug_dest_passwd';
--echo 1)
--error 1
---exec $MYSQL -S $MASTER_MYSOCK -u plug_user $PLUGIN_AUTH_OPT --password=plug_dest -e "SELECT current_user();SELECT user();USE test_user_db;CREATE TABLE t1(a int);SHOW TABLES;DROP TABLE t1;" 2>&1
+--exec $MYSQL -S $MASTER_MYSOCK -u plug_user --password=plug_dest -e "SELECT current_user();SELECT user();USE test_user_db;CREATE TABLE t1(a int);SHOW TABLES;DROP TABLE t1;" 2>&1
GRANT PROXY ON plug_dest TO plug_user;
--echo 2)
---replace_result $MASTER_MYSOCK MASTER_MYSOCK $PLUGIN_AUTH_OPT PLUGIN_AUTH_OPT
---exec $MYSQL -S $MASTER_MYSOCK -u plug_user $PLUGIN_AUTH_OPT --password=plug_dest -e "SELECT current_user();SELECT user();USE test_user_db;CREATE TABLE t1(a int);SHOW TABLES;DROP TABLE t1;" 2>&1
+--replace_result $MASTER_MYSOCK MASTER_MYSOCK
+--exec $MYSQL -S $MASTER_MYSOCK -u plug_user --password=plug_dest -e "SELECT current_user();SELECT user();USE test_user_db;CREATE TABLE t1(a int);SHOW TABLES;DROP TABLE t1;" 2>&1
REVOKE ALL PRIVILEGES ON test_user_db.* FROM 'plug_user'
IDENTIFIED WITH test_plugin_server AS 'plug_dest';
#REVOKE ALL PRIVILEGES ON test_user_db.* FROM 'plug_dest'
@@ -67,14 +67,14 @@ GRANT ALL PRIVILEGES ON test_user_db.* TO plug_user
IDENTIFIED WITH test_plugin_server AS 'plug_dest';
CREATE USER plug_dest IDENTIFIED BY 'plug_dest_passwd';
GRANT PROXY ON plug_dest TO plug_user;
---replace_result $MASTER_MYSOCK MASTER_MYSOCK $PLUGIN_AUTH_OPT PLUGIN_AUTH_OPT
---exec $MYSQL -S $MASTER_MYSOCK -u plug_user $PLUGIN_AUTH_OPT --password=plug_dest -e "SELECT current_user();SELECT user();" 2>&1
+--replace_result $MASTER_MYSOCK MASTER_MYSOCK
+--exec $MYSQL -S $MASTER_MYSOCK -u plug_user --password=plug_dest -e "SELECT current_user();SELECT user();" 2>&1
RENAME USER plug_dest TO new_dest;
--error 1
---exec $MYSQL -S $MASTER_MYSOCK -u plug_user $PLUGIN_AUTH_OPT --password=plug_dest -e "SELECT current_user();SELECT user();" 2>&1
+--exec $MYSQL -S $MASTER_MYSOCK -u plug_user --password=plug_dest -e "SELECT current_user();SELECT user();" 2>&1
GRANT PROXY ON new_dest TO plug_user;
--error 1
---exec $MYSQL -S $MASTER_MYSOCK -u plug_user $PLUGIN_AUTH_OPT --password=new_dest -e "SELECT current_user();SELECT user();" 2>&1
+--exec $MYSQL -S $MASTER_MYSOCK -u plug_user --password=new_dest -e "SELECT current_user();SELECT user();" 2>&1
--sorted_result
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
DROP USER plug_user,new_dest;
@@ -84,16 +84,16 @@ CREATE USER plug_user
IDENTIFIED WITH test_plugin_server AS 'plug_dest';
CREATE USER plug_dest IDENTIFIED BY 'plug_dest_passwd';
--error 1
---exec $MYSQL -S $MASTER_MYSOCK -u plug_user $PLUGIN_AUTH_OPT --password=plug_dest -e "SELECT current_user();SELECT user();" 2>&1
+--exec $MYSQL -S $MASTER_MYSOCK -u plug_user --password=plug_dest -e "SELECT current_user();SELECT user();" 2>&1
GRANT PROXY ON plug_dest TO plug_user;
---replace_result $MASTER_MYSOCK MASTER_MYSOCK $PLUGIN_AUTH_OPT PLUGIN_AUTH_OPT
---exec $MYSQL -S $MASTER_MYSOCK -u plug_user $PLUGIN_AUTH_OPT --password=plug_dest -e "SELECT current_user();SELECT user();" 2>&1
+--replace_result $MASTER_MYSOCK MASTER_MYSOCK
+--exec $MYSQL -S $MASTER_MYSOCK -u plug_user --password=plug_dest -e "SELECT current_user();SELECT user();" 2>&1
RENAME USER plug_dest TO new_dest;
--error 1
---exec $MYSQL -S $MASTER_MYSOCK -u plug_user $PLUGIN_AUTH_OPT --password=plug_dest -e "SELECT current_user();SELECT user();" 2>&1
+--exec $MYSQL -S $MASTER_MYSOCK -u plug_user --password=plug_dest -e "SELECT current_user();SELECT user();" 2>&1
GRANT PROXY ON new_dest TO plug_user;
--error 1
---exec $MYSQL -S $MASTER_MYSOCK -u plug_user $PLUGIN_AUTH_OPT --password=new_dest -e "SELECT current_user();SELECT user();" 2>&1
+--exec $MYSQL -S $MASTER_MYSOCK -u plug_user --password=new_dest -e "SELECT current_user();SELECT user();" 2>&1
--sorted_result
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
DROP USER plug_user,new_dest;
@@ -328,13 +328,13 @@ FLUSH PRIVILEGES;
# Not working with the patch.
#--replace_result $MYSQLADMIN MYSQLADMIN $MASTER_MYPORT MYPORT $MASTER_MYSOCK MYSOCK
-#--exec $MYSQLADMIN $PLUGIN_AUTH_OPT -h localhost -P $MASTER_MYPORT -S $MASTER_MYSOCK -u plug_user --password=plug_dest ping 2>&1
+#--exec $MYSQLADMIN -h localhost -P $MASTER_MYPORT -S $MASTER_MYSOCK -u plug_user --password=plug_dest ping 2>&1
#--replace_result $MYSQL_CHECK MYSQL_CHECK $MASTER_MYPORT MYPORT
-#--exec $MYSQL_CHECK $PLUGIN_AUTH_OPT -h localhost -P $MASTER_MYPORT -u plug_user --password=plug_dest test
+#--exec $MYSQL_CHECK -h localhost -P $MASTER_MYPORT -u plug_user --password=plug_dest test
#--replace_result $MYSQL_DUMP MYSQL_DUMP $MASTER_MYPORT MYPORT
-#--exec $MYSQL_DUMP -h localhost -P $MASTER_MYPORT $PLUGIN_AUTH_OPT -u plug_user --password=plug_dest test
+#--exec $MYSQL_DUMP -h localhost -P $MASTER_MYPORT -u plug_user --password=plug_dest test
#--replace_result $MYSQL_SHOW MYSQL_SHOW $MASTER_MYPORT MYPORT
-#--exec $MYSQL_SHOW $PLUGIN_AUTH_OPT -h localhost -P $MASTER_MYPORT --plugin_dir=../plugin/auth -u plug_user --password=plug_dest 2>&1
+#--exec $MYSQL_SHOW -h localhost -P $MASTER_MYPORT --plugin_dir=../plugin/auth -u plug_user --password=plug_dest 2>&1
DROP USER plug_user, plug_dest;
DROP DATABASE test_user_db;
--exit
diff --git a/mysql-test/t/plugin_auth_qa_2-master.opt b/mysql-test/t/plugin_auth_qa_2-master.opt
index 354907b9366..1a023ad271c 100644
--- a/mysql-test/t/plugin_auth_qa_2-master.opt
+++ b/mysql-test/t/plugin_auth_qa_2-master.opt
@@ -1,2 +1 @@
-$PLUGIN_AUTH_INTERFACE_OPT
-$PLUGIN_AUTH_INTERFACE_LOAD
+--plugin-load=$QA_AUTH_INTERFACE_SO
diff --git a/mysql-test/t/plugin_auth_qa_2.test b/mysql-test/t/plugin_auth_qa_2.test
index e265690dc7d..0f89e54f357 100644
--- a/mysql-test/t/plugin_auth_qa_2.test
+++ b/mysql-test/t/plugin_auth_qa_2.test
@@ -20,8 +20,8 @@ SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
SELECT @@proxy_user;
SELECT @@external_user;
---echo exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT -u qa_test_1_user --password=qa_test_1_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
---exec $MYSQL $PLUGIN_AUTH_OPT -h localhost -P $MASTER_MYPORT -u qa_test_1_user --password=qa_test_1_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--echo exec MYSQL -h localhost -P MASTER_MYPORT -u qa_test_1_user --password=qa_test_1_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--exec $MYSQL -h localhost -P $MASTER_MYPORT -u qa_test_1_user --password=qa_test_1_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
--sorted_result
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
@@ -42,8 +42,8 @@ SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
SELECT @@proxy_user;
SELECT @@external_user;
---echo exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT -u qa_test_2_user --password=qa_test_2_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
---exec $MYSQL $PLUGIN_AUTH_OPT -h localhost -P $MASTER_MYPORT -u qa_test_2_user --password=qa_test_2_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--echo exec MYSQL -h localhost -P MASTER_MYPORT -u qa_test_2_user --password=qa_test_2_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--exec $MYSQL -h localhost -P $MASTER_MYPORT -u qa_test_2_user --password=qa_test_2_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
--sorted_result
SELECT user,plugin,authentication_string FROM mysql.user WHERE user != 'root';
@@ -59,8 +59,8 @@ CREATE USER qa_test_3_dest IDENTIFIED BY 'dest_passwd';
GRANT ALL PRIVILEGES ON test_user_db.* TO qa_test_3_dest identified by 'dest_passwd';
GRANT PROXY ON qa_test_3_dest TO qa_test_3_user;
---echo exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT -u qa_test_3_user --password=qa_test_3_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
---exec $MYSQL $PLUGIN_AUTH_OPT -h localhost -P $MASTER_MYPORT -u qa_test_3_user --password=qa_test_3_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--echo exec MYSQL -h localhost -P MASTER_MYPORT -u qa_test_3_user --password=qa_test_3_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--exec $MYSQL -h localhost -P $MASTER_MYPORT -u qa_test_3_user --password=qa_test_3_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
DROP USER qa_test_3_user;
DROP USER qa_test_3_dest;
@@ -72,8 +72,8 @@ CREATE USER qa_test_4_dest IDENTIFIED BY 'dest_passwd';
GRANT ALL PRIVILEGES ON test_user_db.* TO qa_test_4_dest identified by 'dest_passwd';
GRANT PROXY ON qa_test_4_dest TO qa_test_4_user;
---echo exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT -u qa_test_4_user --password=qa_test_4_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
---exec $MYSQL $PLUGIN_AUTH_OPT -h localhost -P $MASTER_MYPORT -u qa_test_4_user --password=qa_test_4_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--echo exec MYSQL -h localhost -P MASTER_MYPORT -u qa_test_4_user --password=qa_test_4_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--exec $MYSQL -h localhost -P $MASTER_MYPORT -u qa_test_4_user --password=qa_test_4_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
DROP USER qa_test_4_user;
DROP USER qa_test_4_dest;
@@ -91,9 +91,9 @@ GRANT PROXY ON qa_test_5_dest TO ''@'localhost';
--sorted_result
SELECT user,plugin,authentication_string,password FROM mysql.user WHERE user != 'root';
---echo exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT --user=qa_test_5_user --password=qa_test_5_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--echo exec MYSQL -h localhost -P MASTER_MYPORT --user=qa_test_5_user --password=qa_test_5_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
--error 1
---exec $MYSQL $PLUGIN_AUTH_OPT -h localhost -P $MASTER_MYPORT --user=qa_test_5_user --password=qa_test_5_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--exec $MYSQL -h localhost -P $MASTER_MYPORT --user=qa_test_5_user --password=qa_test_5_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
DROP USER qa_test_5_user;
DROP USER qa_test_5_dest;
@@ -109,25 +109,25 @@ GRANT PROXY ON qa_test_6_dest TO qa_test_6_user;
--sorted_result
SELECT user,plugin,authentication_string,password FROM mysql.user;
---echo exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT --user=qa_test_6_user --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--echo exec MYSQL -h localhost -P MASTER_MYPORT --user=qa_test_6_user --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
--error 1
---exec $MYSQL $PLUGIN_AUTH_OPT -h localhost -P $MASTER_MYPORT --user=qa_test_6_user --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--exec $MYSQL -h localhost -P $MASTER_MYPORT --user=qa_test_6_user --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
GRANT PROXY ON qa_test_6_dest TO root IDENTIFIED WITH qa_auth_interface AS 'qa_test_6_dest';
--sorted_result
SELECT user,plugin,authentication_string,password FROM mysql.user;
---echo exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT --user=root --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--echo exec MYSQL -h localhost -P MASTER_MYPORT --user=root --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
--error 1
---exec $MYSQL $PLUGIN_AUTH_OPT -h localhost -P $MASTER_MYPORT --user=root --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--exec $MYSQL -h localhost -P $MASTER_MYPORT --user=root --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
REVOKE PROXY ON qa_test_6_dest FROM root;
--sorted_result
SELECT user,plugin,authentication_string FROM mysql.user;
---echo exec MYSQL PLUGIN_AUTH_OPT -h localhost -P MASTER_MYPORT --user=root --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--echo exec MYSQL -h localhost -P MASTER_MYPORT --user=root --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
--error 1
---exec $MYSQL $PLUGIN_AUTH_OPT -h localhost -P $MASTER_MYPORT --user=root --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--exec $MYSQL -h localhost -P $MASTER_MYPORT --user=root --password=qa_test_6_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
DROP USER qa_test_6_user;
DROP USER qa_test_6_dest;
@@ -143,9 +143,9 @@ CREATE USER qa_test_11_dest IDENTIFIED BY 'dest_passwd';
GRANT ALL PRIVILEGES ON test_user_db.* TO qa_test_11_dest identified by 'dest_passwd';
GRANT PROXY ON qa_test_11_dest TO qa_test_11_user;
---echo exec MYSQL PLUGIN_AUTH_OPT --default_auth=qa_auth_client -h localhost -P MASTER_MYPORT -u qa_test_11_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--echo exec MYSQL --default_auth=qa_auth_client -h localhost -P MASTER_MYPORT -u qa_test_11_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
--error 1
---exec $MYSQL $PLUGIN_AUTH_OPT --default_auth=qa_auth_client -h localhost -P $MASTER_MYPORT -u qa_test_11_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--exec $MYSQL --default_auth=qa_auth_client -h localhost -P $MASTER_MYPORT -u qa_test_11_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
DROP USER qa_test_11_user, qa_test_11_dest;
DROP DATABASE test_user_db;
diff --git a/mysql-test/t/plugin_auth_qa_3-master.opt b/mysql-test/t/plugin_auth_qa_3-master.opt
index e1754862a4d..5d53a9dbe04 100644
--- a/mysql-test/t/plugin_auth_qa_3-master.opt
+++ b/mysql-test/t/plugin_auth_qa_3-master.opt
@@ -1,2 +1 @@
-$PLUGIN_AUTH_SERVER_OPT
-$PLUGIN_AUTH_SERVER_LOAD
+--plugin-load=$QA_AUTH_SERVER_SO
diff --git a/mysql-test/t/plugin_auth_qa_3.test b/mysql-test/t/plugin_auth_qa_3.test
index f7d90226332..349d574227a 100644
--- a/mysql-test/t/plugin_auth_qa_3.test
+++ b/mysql-test/t/plugin_auth_qa_3.test
@@ -12,12 +12,12 @@ CREATE USER qa_test_11_user IDENTIFIED WITH qa_auth_server AS 'qa_test_11_dest';
GRANT ALL PRIVILEGES ON test_user_db.* TO qa_test_11_dest identified by 'dest_passwd';
GRANT PROXY ON qa_test_11_dest TO qa_test_11_user;
---echo exec MYSQL PLUGIN_AUTH_OPT --default_auth=qa_auth_client -h localhost -P MASTER_MYPORT -u qa_test_11_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
---exec $MYSQL $PLUGIN_AUTH_OPT --default_auth=qa_auth_client -h localhost -P $MASTER_MYPORT -u qa_test_11_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--echo exec MYSQL --default_auth=qa_auth_client -h localhost -P MASTER_MYPORT -u qa_test_11_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--exec $MYSQL --default_auth=qa_auth_client -h localhost -P $MASTER_MYPORT -u qa_test_11_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
---echo exec MYSQL PLUGIN_AUTH_OPT --default_auth=qa_auth_client -h localhost -P MASTER_MYPORT -u qa_test_2_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--echo exec MYSQL --default_auth=qa_auth_client -h localhost -P MASTER_MYPORT -u qa_test_2_user --password=qa_test_11_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
--error 1
---exec $MYSQL $PLUGIN_AUTH_OPT --default_auth=qa_auth_client -h localhost -P $MASTER_MYPORT -u qa_test_2_user --password=qa_test_2_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
+--exec $MYSQL --default_auth=qa_auth_client -h localhost -P $MASTER_MYPORT -u qa_test_2_user --password=qa_test_2_dest test_user_db -e "SELECT current_user(),user(),@@local.proxy_user,@@local.external_user;" 2>&1
DROP USER qa_test_11_user, qa_test_11_dest;
DROP DATABASE test_user_db;
diff --git a/mysql-test/t/plugin_load_option-master.opt b/mysql-test/t/plugin_load_option-master.opt
index e22ecb4ff3a..a5a12e7b0d6 100644
--- a/mysql-test/t/plugin_load_option-master.opt
+++ b/mysql-test/t/plugin_load_option-master.opt
@@ -1,3 +1,2 @@
-$EXAMPLE_PLUGIN_OPT
-$EXAMPLE_PLUGIN_LOAD
+--plugin-load=EXAMPLE=$HA_EXAMPLE_SO
--loose-plugin-example=FORCE_PLUS_PERMANENT
diff --git a/mysql-test/t/plugin_not_embedded.test b/mysql-test/t/plugin_not_embedded.test
index f183d1f0ffe..3e3bd6e86ca 100644
--- a/mysql-test/t/plugin_not_embedded.test
+++ b/mysql-test/t/plugin_not_embedded.test
@@ -25,7 +25,7 @@ DROP USER bug51770@localhost;
# The bug consisted of not recognizing / on Windows, so checking / on
# all platforms should cover this case.
-let $path = `select CONCAT_WS('/', '..', '$EXAMPLE_PLUGIN')`;
+let $path = `select CONCAT_WS('/', '..', '$HA_EXAMPLE_SO')`;
--replace_regex /\.dll/.so/
--error ER_UDF_NO_PATHS
eval INSTALL PLUGIN example SONAME '$path';
diff --git a/mysql-test/t/select.test b/mysql-test/t/select.test
index ab0487e6acf..534f39d631b 100644
--- a/mysql-test/t/select.test
+++ b/mysql-test/t/select.test
@@ -1855,7 +1855,9 @@ select * from t1 inner join (t1 as t2 left join t1 as t3 using (a)) on t1.a>1;
select * from (t1 as t2 left join t1 as t3 using (a)) inner join t1 using ( a );
select * from t1 inner join (t1 as t2 left join t1 as t3 using (a)) using ( a );
# left [outer] join on
+--sorted_result
select * from (t1 as t2 left join t1 as t3 using (a)) left outer join t1 on t1.a>1;
+--sorted_result
select * from t1 left outer join (t1 as t2 left join t1 as t3 using (a)) on t1.a>1;
# left join using
select * from (t1 as t2 left join t1 as t3 using (a)) left join t1 using ( a );
@@ -1864,7 +1866,9 @@ select * from t1 left join (t1 as t2 left join t1 as t3 using (a)) using ( a );
select * from (t1 as t2 left join t1 as t3 using (a)) natural left join t1;
select * from t1 natural left join (t1 as t2 left join t1 as t3 using (a));
# right join on
+--sorted_result
select * from (t1 as t2 left join t1 as t3 using (a)) right join t1 on t1.a>1;
+--sorted_result
select * from t1 right join (t1 as t2 left join t1 as t3 using (a)) on t1.a>1;
# right [outer] joing using
select * from (t1 as t2 left join t1 as t3 using (a)) right outer join t1 using ( a );
@@ -2535,10 +2539,14 @@ insert into t1 values(1),(2);
insert into t2 values(1),(2);
create view v2 (c) as select a1 from t1;
+--sorted_result
select * from t1 natural left join t2;
+--sorted_result
select * from t1 natural right join t2;
+--sorted_result
select * from v2 natural left join t2;
+--sorted_result
select * from v2 natural right join t2;
drop table t1, t2;
@@ -2707,16 +2715,20 @@ create view v3 as select (t1.id+2) as id from t1 natural left join t2;
# all queries must return the same result
select t1.id from t1 left join v2 using (id);
select t1.id from v2 right join t1 using (id);
+--sorted_result
select t1.id from t1 left join v3 using (id);
select * from t1 left join v2 using (id);
select * from v2 right join t1 using (id);
+--sorted_result
select * from t1 left join v3 using (id);
select v1.id from v1 left join v2 using (id);
select v1.id from v2 right join v1 using (id);
+--sorted_result
select v1.id from v1 left join v3 using (id);
select * from v1 left join v2 using (id);
select * from v2 right join v1 using (id);
+--sorted_result
select * from v1 left join v3 using (id);
drop table t1, t2;
diff --git a/mysql-test/t/symlink.test b/mysql-test/t/symlink.test
index 02c3b219a06..20585dd9ab7 100644
--- a/mysql-test/t/symlink.test
+++ b/mysql-test/t/symlink.test
@@ -82,7 +82,7 @@ engine=myisam index directory="not-hard-path";
# Should fail becasue the file t9.MYI already exist in 'run'
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
---error 1,ER_UNKNOWN_ERROR
+--error 1,156
eval create table mysqltest.t9 (a int not null auto_increment, b char(16) not null, primary key (a))
engine=myisam index directory="$MYSQLTEST_VARDIR/run";
diff --git a/mysql-test/t/xa.test b/mysql-test/t/xa.test
index 8ce9ce52960..26c2f0ce210 100644
--- a/mysql-test/t/xa.test
+++ b/mysql-test/t/xa.test
@@ -338,8 +338,8 @@ DROP TABLE t1;
DROP TABLE IF EXISTS t1, t2;
--enable_warnings
-CREATE TABLE t1 (a INT);
-CREATE TABLE t2 (a INT);
+CREATE TABLE t1 (a INT) engine=innodb;
+CREATE TABLE t2 (a INT) engine=innodb;
START TRANSACTION;
INSERT INTO t1 VALUES (1);