Merge lthalmann@bk-internal.mysql.com:/home/bk/mysql-5.1-new

into  mysql.com:/users/lthalmann/bkroot/mysql-5.1-new


mysql-test/r/mysqltest.result:
  Auto merged
mysql-test/t/mysqltest.test:
  Auto merged
This commit is contained in:
unknown 2006-02-08 10:37:47 +01:00
commit 05330c2cb1
132 changed files with 827 additions and 534 deletions

View file

@ -3604,6 +3604,59 @@ static void replace_dynstr_append(DYNAMIC_STRING *ds, const char *val)
} }
/*
Append the result for one field to the dynamic string ds
*/
static void append_field(DYNAMIC_STRING *ds, uint col_idx, MYSQL_FIELD* field,
const char* val, ulonglong len, bool is_null)
{
char buf[256];
if (col_idx < max_replace_column && replace_column[col_idx])
{
val= replace_column[col_idx];
len= strlen(val);
}
else if (is_null)
{
val= "NULL";
len= 4;
}
#ifdef __WIN__
else if ((field->type == MYSQL_TYPE_DOUBLE ||
field->type == MYSQL_TYPE_FLOAT ) &&
field->decimals >= 31)
{
/* Convert 1.2e+018 to 1.2e+18 and 1.2e-018 to 1.2e-18 */
char *start= strchr(val, 'e');
if (start && strlen(start) >= 5 &&
(start[1] == '-' || start[1] == '+') && start[2] == '0')
{
start+=2; /* Now points at first '0' */
/* Move all chars after the first '0' one step left */
memmove(start, start + 1, strlen(start));
len--;
}
}
#endif
if (!display_result_vertically)
{
if (col_idx)
dynstr_append_mem(ds, "\t", 1);
replace_dynstr_append_mem(ds, val, (int)len);
}
else
{
dynstr_append(ds, field->name);
dynstr_append_mem(ds, "\t", 1);
replace_dynstr_append_mem(ds, val, (int)len);
dynstr_append_mem(ds, "\n", 1);
}
}
/* /*
Append all results to the dynamic string separated with '\t' Append all results to the dynamic string separated with '\t'
Values may be converted with 'replace_column' Values may be converted with 'replace_column'
@ -3613,41 +3666,16 @@ static void append_result(DYNAMIC_STRING *ds, MYSQL_RES *res)
{ {
MYSQL_ROW row; MYSQL_ROW row;
uint num_fields= mysql_num_fields(res); uint num_fields= mysql_num_fields(res);
MYSQL_FIELD *fields= !display_result_vertically ? 0 : mysql_fetch_fields(res); MYSQL_FIELD *fields= mysql_fetch_fields(res);
ulong *lengths; ulong *lengths;
while ((row = mysql_fetch_row(res))) while ((row = mysql_fetch_row(res)))
{ {
uint i; uint i;
lengths = mysql_fetch_lengths(res); lengths = mysql_fetch_lengths(res);
for (i = 0; i < num_fields; i++) for (i = 0; i < num_fields; i++)
{ append_field(ds, i, &fields[i],
const char *val= row[i]; (const char*)row[i], lengths[i], !row[i]);
ulonglong len= lengths[i];
if (i < max_replace_column && replace_column[i])
{
val= replace_column[i];
len= strlen(val);
}
if (!val)
{
val= "NULL";
len= 4;
}
if (!display_result_vertically)
{
if (i)
dynstr_append_mem(ds, "\t", 1);
replace_dynstr_append_mem(ds, val, (int)len);
}
else
{
dynstr_append(ds, fields[i].name);
dynstr_append_mem(ds, "\t", 1);
replace_dynstr_append_mem(ds, val, (int)len);
dynstr_append_mem(ds, "\n", 1);
}
}
if (!display_result_vertically) if (!display_result_vertically)
dynstr_append_mem(ds, "\n", 1); dynstr_append_mem(ds, "\n", 1);
} }
@ -3661,13 +3689,12 @@ static void append_result(DYNAMIC_STRING *ds, MYSQL_RES *res)
*/ */
static void append_stmt_result(DYNAMIC_STRING *ds, MYSQL_STMT *stmt, static void append_stmt_result(DYNAMIC_STRING *ds, MYSQL_STMT *stmt,
MYSQL_FIELD *field, uint num_fields) MYSQL_FIELD *fields, uint num_fields)
{ {
MYSQL_BIND *bind; MYSQL_BIND *bind;
my_bool *is_null; my_bool *is_null;
ulong *length; ulong *length;
ulonglong num_rows; uint i;
uint col_idx, row_idx;
/* Allocate array with bind structs, lengths and NULL flags */ /* Allocate array with bind structs, lengths and NULL flags */
bind= (MYSQL_BIND*) my_malloc(num_fields * sizeof(MYSQL_BIND), bind= (MYSQL_BIND*) my_malloc(num_fields * sizeof(MYSQL_BIND),
@ -3677,71 +3704,29 @@ static void append_stmt_result(DYNAMIC_STRING *ds, MYSQL_STMT *stmt,
is_null= (my_bool*) my_malloc(num_fields * sizeof(my_bool), is_null= (my_bool*) my_malloc(num_fields * sizeof(my_bool),
MYF(MY_WME | MY_FAE)); MYF(MY_WME | MY_FAE));
for (col_idx= 0; col_idx < num_fields; col_idx++) /* Allocate data for the result of each field */
for (i= 0; i < num_fields; i++)
{ {
/* Allocate data for output */ uint max_length= fields[i].max_length + 1;
uint max_length= field[col_idx].max_length + 1; bind[i].buffer_type= MYSQL_TYPE_STRING;
char *str_data= (char *) my_malloc(max_length, MYF(MY_WME | MY_FAE)); bind[i].buffer= (char *)my_malloc(max_length, MYF(MY_WME | MY_FAE));
bind[i].buffer_length= max_length;
bind[col_idx].buffer_type= MYSQL_TYPE_STRING; bind[i].is_null= &is_null[i];
bind[col_idx].buffer= (char *)str_data; bind[i].length= &length[i];
bind[col_idx].buffer_length= max_length;
bind[col_idx].is_null= &is_null[col_idx];
bind[col_idx].length= &length[col_idx];
DBUG_PRINT("bind", ("col[%d]: buffer_type: %d, buffer_length: %d", DBUG_PRINT("bind", ("col[%d]: buffer_type: %d, buffer_length: %d",
col_idx, i, bind[i].buffer_type, bind[i].buffer_length));
bind[col_idx].buffer_type,
bind[col_idx].buffer_length));
} }
/* Fill in the data into the structures created above */
if (mysql_stmt_bind_result(stmt, bind)) if (mysql_stmt_bind_result(stmt, bind))
die("mysql_stmt_bind_result failed: %d: %s", die("mysql_stmt_bind_result failed: %d: %s",
mysql_stmt_errno(stmt), mysql_stmt_error(stmt)); mysql_stmt_errno(stmt), mysql_stmt_error(stmt));
/* Read result from each row */ while (mysql_stmt_fetch(stmt) == 0)
num_rows= mysql_stmt_num_rows(stmt);
for (row_idx= 0; row_idx < num_rows; row_idx++)
{ {
if (mysql_stmt_fetch(stmt)) for (i= 0; i < num_fields; i++)
die("mysql_stmt_fetch failed: %d %s", append_field(ds, i, &fields[i], (const char *) bind[i].buffer,
mysql_stmt_errno(stmt), mysql_stmt_error(stmt)); *bind[i].length, *bind[i].is_null);
/* Read result from each column */
for (col_idx= 0; col_idx < num_fields; col_idx++)
{
const char *val;
ulonglong len;
if (col_idx < max_replace_column && replace_column[col_idx])
{
val= replace_column[col_idx];
len= strlen(val);
}
else if (*bind[col_idx].is_null)
{
val= "NULL";
len= 4;
}
else
{
val= (const char *) bind[col_idx].buffer;
len= *bind[col_idx].length;
}
if (!display_result_vertically)
{
if (col_idx) /* No tab before first col */
dynstr_append_mem(ds, "\t", 1);
replace_dynstr_append_mem(ds, val, (int)len);
}
else
{
dynstr_append(ds, field[col_idx].name);
dynstr_append_mem(ds, "\t", 1);
replace_dynstr_append_mem(ds, val, (int)len);
dynstr_append_mem(ds, "\n", 1);
}
}
if (!display_result_vertically) if (!display_result_vertically)
dynstr_append_mem(ds, "\n", 1); dynstr_append_mem(ds, "\n", 1);
} }
@ -3752,10 +3737,10 @@ static void append_stmt_result(DYNAMIC_STRING *ds, MYSQL_STMT *stmt,
free_replace_column(); free_replace_column();
for (col_idx= 0; col_idx < num_fields; col_idx++) for (i= 0; i < num_fields; i++)
{ {
/* Free data for output */ /* Free data for output */
my_free((gptr)bind[col_idx].buffer, MYF(MY_WME | MY_FAE)); my_free((gptr)bind[i].buffer, MYF(MY_WME | MY_FAE));
} }
/* Free array with bind structs, lengths and NULL flags */ /* Free array with bind structs, lengths and NULL flags */
my_free((gptr)bind , MYF(MY_WME | MY_FAE)); my_free((gptr)bind , MYF(MY_WME | MY_FAE));

View file

@ -108,7 +108,7 @@ insert into t1 values(1);
insert ignore into t1 values(1); insert ignore into t1 values(1);
replace into t1 values(100); replace into t1 values(100);
create table t2 (a varchar(200)) engine=blackhole; create table t2 (a varchar(200)) engine=blackhole;
load data infile '../../std_data/words.dat' into table t2; load data infile '../std_data_ln/words.dat' into table t2;
alter table t1 add b int; alter table t1 add b int;
alter table t1 drop b; alter table t1 drop b;
create table t3 like t1; create table t3 like t1;

View file

@ -14,7 +14,7 @@ show binlog events from 102;
# absolutely need variables names to be quoted and strings to be # absolutely need variables names to be quoted and strings to be
# escaped). # escaped).
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR --replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
--exec $MYSQL_BINLOG --short-form $MYSQL_TEST_DIR/var/log/master-bin.000001 --exec $MYSQL_BINLOG --short-form $MYSQLTEST_VARDIR/log/master-bin.000001
drop table t2; drop table t2;
# End of 4.1 tests # End of 4.1 tests

View file

@ -20,7 +20,7 @@
eval create table t1 (a int) engine=$engine_type; eval create table t1 (a int) engine=$engine_type;
flush tables; flush tables;
system rm ./var/master-data/test/t1.MYI ; system rm $MYSQLTEST_VARDIR/master-data/test/t1.MYI ;
drop table if exists t1; drop table if exists t1;
save_master_pos; save_master_pos;
connection slave; connection slave;

View file

@ -46,5 +46,8 @@ sleep 1;
--error 1192 --error 1192
stop slave; stop slave;
connection master;
drop table t3, t4, t5;
# End of 4.1 tests # End of 4.1 tests

View file

@ -21,10 +21,10 @@ reset master;
connection master; connection master;
create table t1(a int not null auto_increment, b int, primary key(a) ); create table t1(a int not null auto_increment, b int, primary key(a) );
load data infile '../../std_data/rpl_loaddata.dat' into table t1; load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
create temporary table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60)); create temporary table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60));
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by '\n##\n' starting by '>' ignore 1 lines; load data infile '../std_data_ln/rpl_loaddata2.dat' into table t2 fields terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by '\n##\n' starting by '>' ignore 1 lines;
create table t3 (day date,id int(9),category enum('a','b','c'),name varchar(60)); create table t3 (day date,id int(9),category enum('a','b','c'),name varchar(60));
insert into t3 select * from t2; insert into t3 select * from t2;
@ -59,7 +59,7 @@ sync_with_master;
insert into t1 values(1,10); insert into t1 values(1,10);
connection master; connection master;
load data infile '../../std_data/rpl_loaddata.dat' into table t1; load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
save_master_pos; save_master_pos;
connection slave; connection slave;
@ -83,7 +83,7 @@ connection master;
set sql_log_bin=0; set sql_log_bin=0;
delete from t1; delete from t1;
set sql_log_bin=1; set sql_log_bin=1;
load data infile '../../std_data/rpl_loaddata.dat' into table t1; load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
save_master_pos; save_master_pos;
connection slave; connection slave;
# The SQL slave thread should be stopped now. # The SQL slave thread should be stopped now.
@ -108,7 +108,7 @@ connection master;
set sql_log_bin=0; set sql_log_bin=0;
delete from t1; delete from t1;
set sql_log_bin=1; set sql_log_bin=1;
load data infile '../../std_data/rpl_loaddata.dat' into table t1; load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
save_master_pos; save_master_pos;
connection slave; connection slave;
# The SQL slave thread should be stopped now. # The SQL slave thread should be stopped now.
@ -128,7 +128,7 @@ reset master;
eval create table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60), eval create table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60),
unique(day)) engine=$engine_type; # no transactions unique(day)) engine=$engine_type; # no transactions
--error 1062 --error 1062
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields load data infile '../std_data_ln/rpl_loaddata2.dat' into table t2 fields
terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by
'\n##\n' starting by '>' ignore 1 lines; '\n##\n' starting by '>' ignore 1 lines;
select * from t2; select * from t2;
@ -144,7 +144,7 @@ alter table t2 drop key day;
connection master; connection master;
delete from t2; delete from t2;
--error 1062 --error 1062
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields load data infile '../std_data_ln/rpl_loaddata2.dat' into table t2 fields
terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by
'\n##\n' starting by '>' ignore 1 lines; '\n##\n' starting by '>' ignore 1 lines;
connection slave; connection slave;

View file

@ -34,7 +34,7 @@ create table t1(n int not null auto_increment primary key);
insert into t1 values (NULL); insert into t1 values (NULL);
drop table t1; drop table t1;
create table t1 (word char(20) not null); create table t1 (word char(20) not null);
load data infile '../../std_data/words.dat' into table t1 ignore 1 lines; load data infile '../std_data_ln/words.dat' into table t1 ignore 1 lines;
select count(*) from t1; select count(*) from t1;
drop table t1; drop table t1;
--replace_result $VERSION VERSION --replace_result $VERSION VERSION

View file

@ -2,7 +2,7 @@
-- source include/master-slave.inc -- source include/master-slave.inc
create table t1 (word char(20) not null); create table t1 (word char(20) not null);
load data infile '../../std_data/words.dat' into table t1; load data infile '../std_data_ln/words.dat' into table t1;
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR --replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
eval load data local infile '$MYSQL_TEST_DIR/std_data/words.dat' into table t1; eval load data local infile '$MYSQL_TEST_DIR/std_data/words.dat' into table t1;
select * from t1 limit 10; select * from t1 limit 10;
@ -124,6 +124,7 @@ select n from t1;
select select_priv,user from mysql.user where user = _binary'blafasel2'; select select_priv,user from mysql.user where user = _binary'blafasel2';
connection master1; connection master1;
drop table t1; drop table t1;
delete from mysql.user where user="blafasel2";
save_master_pos; save_master_pos;
connection slave; connection slave;
sync_with_master; sync_with_master;

View file

@ -156,7 +156,7 @@ select hex(c1), hex(c2) from t1;
connection master; connection master;
# Let's have a look at generated SETs. # Let's have a look at generated SETs.
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR --replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
--exec $MYSQL_BINLOG --short-form $MYSQL_TEST_DIR/var/log/master-bin.000001 --exec $MYSQL_BINLOG --short-form $MYSQLTEST_VARDIR/log/master-bin.000001
drop table t1; drop table t1;
sync_slave_with_master; sync_slave_with_master;

View file

@ -0,0 +1,51 @@
#
# This test is executed twice for each test case if mysql-test-run is passed
# the flag --check-testcase.
# Before every testcase it's run with mysqltest in record mode and will
# thus produce an output file
# that can be compared to output from after the tescase.
# In that way it's possible to check that a testcase does not have
# any unwanted side affects.
#
#
# Dump all global variables
#
show global variables;
#
# Dump all databases
#
show databases;
#
# Dump the "test" database, all it's tables and their data
#
--exec $MYSQL_DUMP --skip-comments test
#
# Dump the "mysql" database and it's tables
# Select data separately to add "order by"
#
--exec $MYSQL_DUMP --skip-comments --no-data mysql
use mysql;
select * from columns_priv;
select * from db order by host, db, user;
select * from func;
select * from help_category;
select * from help_keyword;
select * from help_relation;
select * from help_relation;
select * from host;
select * from proc;
select * from procs_priv;
select * from tables_priv;
select * from time_zone;
select * from time_zone_leap_second;
select * from time_zone_name;
select * from time_zone_transition;
select * from time_zone_transition_type;
select * from user;

View file

@ -1,5 +1,5 @@
-- require r/have_outfile.require -- require r/have_outfile.require
disable_query_log; disable_query_log;
select load_file(concat(@tmpdir,"/outfile.test")); select load_file(concat(@tmpdir,"/outfile.test"));
--exec rm $MYSQL_TEST_DIR/var/tmp/outfile.test --exec rm $MYSQLTEST_VARDIR/tmp/outfile.test
enable_query_log; enable_query_log;

View file

@ -0,0 +1 @@
echo here is the sourced script;

View file

@ -0,0 +1 @@
--source include/sourced.inc

View file

@ -1 +1 @@
eval select "Outfile OK" into outfile "$MYSQL_TEST_DIR/var/tmp/outfile.test"; eval select "Outfile OK" into outfile "$MYSQLTEST_VARDIR/tmp/outfile.test";

View file

@ -76,6 +76,7 @@ $Devel::Trace::TRACE= 0; # Don't trace boring init stuff
#require 5.6.1; #require 5.6.1;
use File::Path; use File::Path;
use File::Basename; use File::Basename;
use File::Copy;
use Cwd; use Cwd;
use Getopt::Long; use Getopt::Long;
use Sys::Hostname; use Sys::Hostname;
@ -156,8 +157,7 @@ our $path_client_bindir;
our $path_language; our $path_language;
our $path_timefile; our $path_timefile;
our $path_manager_log; # Used by mysqldadmin our $path_manager_log; # Used by mysqldadmin
our $path_mysqltest_log; our $path_mysqltest_log;
our $path_slave_load_tmpdir; # What is this?!
our $path_my_basedir; our $path_my_basedir;
our $opt_vardir; # A path but set directly on cmd line our $opt_vardir; # A path but set directly on cmd line
our $opt_tmpdir; # A path but set directly on cmd line our $opt_tmpdir; # A path but set directly on cmd line
@ -246,6 +246,7 @@ our $opt_manager_port; # Does nothing now, we never use manager
our $opt_old_master; our $opt_old_master;
our $opt_record; our $opt_record;
our $opt_check_testcases;
our $opt_result_ext; our $opt_result_ext;
@ -484,9 +485,6 @@ sub initial_setup () {
$glob_basedir= dirname($glob_mysql_test_dir); $glob_basedir= dirname($glob_mysql_test_dir);
$glob_mysql_bench_dir= "$glob_basedir/mysql-bench"; # FIXME make configurable $glob_mysql_bench_dir= "$glob_basedir/mysql-bench"; # FIXME make configurable
# needs to be same length to test logging (FIXME what???)
$path_slave_load_tmpdir= "../../var/tmp";
$path_my_basedir= $path_my_basedir=
$opt_source_dist ? $glob_mysql_test_dir : $glob_basedir; $opt_source_dist ? $glob_mysql_test_dir : $glob_basedir;
@ -571,6 +569,7 @@ sub command_line_setup () {
# Test case authoring # Test case authoring
'record' => \$opt_record, 'record' => \$opt_record,
'check-testcases' => \$opt_check_testcases,
# ??? # ???
'mysqld=s' => \@opt_extra_mysqld_opt, 'mysqld=s' => \@opt_extra_mysqld_opt,
@ -1118,6 +1117,7 @@ sub environment_setup () {
$ENV{'USE_RUNNING_SERVER'}= $glob_use_running_server; $ENV{'USE_RUNNING_SERVER'}= $glob_use_running_server;
$ENV{'MYSQL_TEST_DIR'}= $glob_mysql_test_dir; $ENV{'MYSQL_TEST_DIR'}= $glob_mysql_test_dir;
$ENV{'MYSQL_TEST_WINDIR'}= $glob_mysql_test_dir; $ENV{'MYSQL_TEST_WINDIR'}= $glob_mysql_test_dir;
$ENV{'MYSQLTEST_VARDIR'}= $opt_vardir;
$ENV{'MASTER_MYSOCK'}= $master->[0]->{'path_mysock'}; $ENV{'MASTER_MYSOCK'}= $master->[0]->{'path_mysock'};
$ENV{'MASTER_WINMYSOCK'}= $master->[0]->{'path_mysock'}; $ENV{'MASTER_WINMYSOCK'}= $master->[0]->{'path_mysock'};
$ENV{'MASTER_MYSOCK1'}= $master->[1]->{'path_mysock'}; $ENV{'MASTER_MYSOCK1'}= $master->[1]->{'path_mysock'};
@ -1221,10 +1221,40 @@ sub kill_and_cleanup () {
mtr_report("Removing Stale Files"); mtr_report("Removing Stale Files");
rmtree("$opt_vardir/log"); if ( $opt_vardir eq "$glob_mysql_test_dir/var" )
rmtree("$opt_vardir/ndbcluster-$opt_ndbcluster_port"); {
rmtree("$opt_vardir/run"); #
rmtree("$opt_vardir/tmp"); # Running with "var" in mysql-test dir
#
if ( -l "$glob_mysql_test_dir/var" )
{
# Some users creates a soft link in mysql-test/var to another area
# - allow it
mtr_report("WARNING: Using the 'mysql-test/var' symlink");
rmtree("$opt_vardir/log");
rmtree("$opt_vardir/ndbcluster-$opt_ndbcluster_port");
rmtree("$opt_vardir/run");
rmtree("$opt_vardir/tmp");
}
else
{
# Remove the entire "var" dir
rmtree("$opt_vardir/");
}
}
else
{
#
# Running with "var" in some other place
#
# Remove the var/ dir in mysql-test dir if any
# this could be an old symlink that shouldn't be there
rmtree("$glob_mysql_test_dir/var");
# Remove the "var" dir
rmtree("$opt_vardir/");
}
mkpath("$opt_vardir/log"); mkpath("$opt_vardir/log");
mkpath("$opt_vardir/run"); mkpath("$opt_vardir/run");
@ -1240,7 +1270,7 @@ sub kill_and_cleanup () {
$slave->[0]->{'path_myddir'}, $slave->[0]->{'path_myddir'},
$slave->[1]->{'path_myddir'}, $slave->[1]->{'path_myddir'},
$slave->[2]->{'path_myddir'}); $slave->[2]->{'path_myddir'});
foreach my $instance (@{$instance_manager->{'instances'}}) foreach my $instance (@{$instance_manager->{'instances'}})
{ {
push(@data_dir_lst, $instance->{'path_datadir'}); push(@data_dir_lst, $instance->{'path_datadir'});
@ -1253,18 +1283,27 @@ sub kill_and_cleanup () {
mkpath("$data_dir/test"); mkpath("$data_dir/test");
} }
# To make some old test cases work, we create a soft # Make a link std_data_ln in var/ that points to std_data
# link from the old "var" location to the new one if ( ! $glob_win32 )
if ( ! $glob_win32 and $opt_vardir ne "$glob_mysql_test_dir/var" )
{ {
# FIXME why bother with the above, why not always remove all of var?! symlink("$glob_mysql_test_dir/std_data", "$opt_vardir/std_data_ln");
rmtree("$glob_mysql_test_dir/var"); # Clean old var, FIXME or rename it?! }
symlink($opt_vardir, "$glob_mysql_test_dir/var"); else
{
# on windows, copy all files from std_data into var/std_data_ln
mkpath("$opt_vardir/std_data_ln");
opendir(DIR, "$glob_mysql_test_dir/std_data")
or mtr_error("Can't find the std_data directory: $!");
for(readdir(DIR)) {
next if -d "$glob_mysql_test_dir/std_data/$_";
copy("$glob_mysql_test_dir/std_data/$_", "$opt_vardir/std_data_ln/$_");
}
closedir(DIR);
} }
} }
sub check_ssl_support () { sub check_ssl_support () {
if ($opt_skip_ssl) if ($opt_skip_ssl)
@ -2359,8 +2398,12 @@ sub mysqld_arguments ($$$$$$) {
mtr_add_arg($args, "%s--skip-innodb", $prefix); mtr_add_arg($args, "%s--skip-innodb", $prefix);
mtr_add_arg($args, "%s--skip-ndbcluster", $prefix); mtr_add_arg($args, "%s--skip-ndbcluster", $prefix);
mtr_add_arg($args, "%s--skip-slave-start", $prefix); mtr_add_arg($args, "%s--skip-slave-start", $prefix);
# Directory where slaves find the dumps generated by "load data"
# on the server. The path need to have constant length otherwise
# test results will vary, thus a relative path is used.
mtr_add_arg($args, "%s--slave-load-tmpdir=%s", $prefix, mtr_add_arg($args, "%s--slave-load-tmpdir=%s", $prefix,
$path_slave_load_tmpdir); "../tmp");
mtr_add_arg($args, "%s--socket=%s", $prefix, mtr_add_arg($args, "%s--socket=%s", $prefix,
$slave->[$idx]->{'path_mysock'}); $slave->[$idx]->{'path_mysock'});
mtr_add_arg($args, "%s--set-variable=slave_net_timeout=10", $prefix); mtr_add_arg($args, "%s--set-variable=slave_net_timeout=10", $prefix);
@ -2730,6 +2773,54 @@ sub im_stop($) {
$instance_manager->{'pid'} = undef; $instance_manager->{'pid'} = undef;
} }
#
# Run include/check-testcase.test
# Before a testcase, run in record mode, save result file to var
# After testcase, run and compare with the recorded file, they should be equal!
#
sub run_check_testcase ($) {
my $mode= shift;
my $args;
mtr_init_args(\$args);
mtr_add_arg($args, "--no-defaults");
mtr_add_arg($args, "--silent");
mtr_add_arg($args, "-v");
mtr_add_arg($args, "--skip-safemalloc");
mtr_add_arg($args, "--tmpdir=%s", $opt_tmpdir);
mtr_add_arg($args, "--socket=%s", $master->[0]->{'path_mysock'});
mtr_add_arg($args, "--port=%d", $master->[0]->{'path_myport'});
mtr_add_arg($args, "--database=test");
mtr_add_arg($args, "--user=%s", $opt_user);
mtr_add_arg($args, "--password=");
mtr_add_arg($args, "-R");
mtr_add_arg($args, "$opt_vardir/tmp/check-testcase.result");
if ( $mode eq "before" )
{
mtr_add_arg($args, "--record");
}
my $res = mtr_run_test($exe_mysqltest,$args,
"include/check-testcase.test", "", "", "");
if ( $res == 1 and $mode = "after")
{
mtr_run("diff",["-u",
"$opt_vardir/tmp/check-testcase.result",
"$opt_vardir/tmp/check-testcase.reject"],
"", "", "", "");
}
elsif ( $res )
{
mtr_error("Could not execute 'check-testcase' $mode testcase");
}
}
sub run_mysqltest ($) { sub run_mysqltest ($) {
my $tinfo= shift; my $tinfo= shift;
@ -2983,7 +3074,18 @@ sub run_mysqltest ($) {
mtr_add_arg($args, "--record"); mtr_add_arg($args, "--record");
} }
return mtr_run_test($exe,$args,$tinfo->{'path'},"",$path_timefile,""); if ( $opt_check_testcases )
{
run_check_testcase("before");
}
my $res = mtr_run_test($exe,$args,$tinfo->{'path'},"",$path_timefile,"");
if ( $opt_check_testcases )
{
run_check_testcase("after");
}
return $res;
} }
@ -3040,7 +3142,7 @@ Options to control what engine/variation to run
sp-protocol Create a stored procedure to execute all queries sp-protocol Create a stored procedure to execute all queries
compress Use the compressed protocol between client and server compress Use the compressed protocol between client and server
ssl Use ssl protocol between client and server ssl Use ssl protocol between client and server
skip-ssl Dont start sterver with support for ssl connections skip-ssl Dont start server with support for ssl connections
bench Run the benchmark suite FIXME bench Run the benchmark suite FIXME
small-bench FIXME small-bench FIXME
@ -3067,6 +3169,7 @@ Options that specify ports
Options for test case authoring Options for test case authoring
record TESTNAME (Re)genereate the result file for TESTNAME record TESTNAME (Re)genereate the result file for TESTNAME
check-testcases Check testcases for sideeffects
Options that pass on options Options that pass on options

View file

@ -185,7 +185,8 @@ BASEDIR=`pwd`
cd $CWD cd $CWD
MYSQL_TEST_DIR=$BASEDIR/mysql-test MYSQL_TEST_DIR=$BASEDIR/mysql-test
MYSQL_TEST_WINDIR=$MYSQL_TEST_DIR MYSQL_TEST_WINDIR=$MYSQL_TEST_DIR
export MYSQL_TEST_DIR MYSQL_TEST_WINDIR MYSQLTEST_VARDIR=$MYSQL_TEST_DIR/var
export MYSQL_TEST_DIR MYSQL_TEST_WINDIR MYSQLTEST_VARDIR
STD_DATA=$MYSQL_TEST_DIR/std_data STD_DATA=$MYSQL_TEST_DIR/std_data
hostname=`hostname` # Installed in the mysql privilege table hostname=`hostname` # Installed in the mysql privilege table
@ -650,7 +651,8 @@ fi
[ -d $MYSQL_TEST_DIR/var/tmp ] || mkdir $MYSQL_TEST_DIR/var/tmp [ -d $MYSQL_TEST_DIR/var/tmp ] || mkdir $MYSQL_TEST_DIR/var/tmp
[ -d $MYSQL_TEST_DIR/var/run ] || mkdir $MYSQL_TEST_DIR/var/run [ -d $MYSQL_TEST_DIR/var/run ] || mkdir $MYSQL_TEST_DIR/var/run
[ -d $MYSQL_TEST_DIR/var/log ] || mkdir $MYSQL_TEST_DIR/var/log [ -d $MYSQL_TEST_DIR/var/log ] || mkdir $MYSQL_TEST_DIR/var/log
ln -s $MYSQL_TEST_DIR/std_data $MYSQL_TEST_DIR/var/std_data_ln
if test ${COLUMNS:-0} -lt 80 ; then COLUMNS=80 ; fi if test ${COLUMNS:-0} -lt 80 ; then COLUMNS=80 ; fi
E=`$EXPR $COLUMNS - 8` E=`$EXPR $COLUMNS - 8`
DASH72=`$ECHO '-------------------------------------------------------'|$CUT -c 1-$E` DASH72=`$ECHO '-------------------------------------------------------'|$CUT -c 1-$E`

View file

@ -46,3 +46,4 @@ Field_name Min_value Max_value Min_length Max_length Empties_or_zeros Nulls Avg_
execute stmt1; execute stmt1;
Field_name Min_value Max_value Min_length Max_length Empties_or_zeros Nulls Avg_value_or_avg_length Std Optimal_fieldtype Field_name Min_value Max_value Min_length Max_length Empties_or_zeros Nulls Avg_value_or_avg_length Std Optimal_fieldtype
deallocate prepare stmt1; deallocate prepare stmt1;
drop table t1;

View file

@ -6,7 +6,7 @@ Table Op Msg_type Msg_text
test.t4 backup error Failed copying .frm file (errno: X) test.t4 backup error Failed copying .frm file (errno: X)
test.t4 backup status Operation failed test.t4 backup status Operation failed
Warnings: Warnings:
Error 1 Can't create/write to file 'MYSQL_TEST_DIR/var/bogus/t4.frm' (Errcode: X) Error 1 Can't create/write to file 'MYSQLTEST_VARDIR/bogus/t4.frm' (Errcode: X)
backup table t4 to '../tmp'; backup table t4 to '../tmp';
Table Op Msg_type Msg_text Table Op Msg_type Msg_text
test.t4 backup status OK test.t4 backup status OK
@ -15,7 +15,7 @@ Table Op Msg_type Msg_text
test.t4 backup error Failed copying .frm file (errno: X) test.t4 backup error Failed copying .frm file (errno: X)
test.t4 backup status Operation failed test.t4 backup status Operation failed
Warnings: Warnings:
Error 1 Can't create/write to file 'MYSQL_TEST_DIR/var/tmp/t4.frm' (Errcode: X) Error 1 Can't create/write to file 'MYSQLTEST_VARDIR/tmp/t4.frm' (Errcode: X)
drop table t4; drop table t4;
restore table t4 from '../tmp'; restore table t4 from '../tmp';
Table Op Msg_type Msg_text Table Op Msg_type Msg_text
@ -33,7 +33,7 @@ restore table t1 from '../bogus';
Table Op Msg_type Msg_text Table Op Msg_type Msg_text
t1 restore error Failed copying .frm file t1 restore error Failed copying .frm file
Warnings: Warnings:
Error 29 File 'MYSQL_TEST_DIR/var/bogus/t1.frm' not found (Errcode: X) Error 29 File 'MYSQLTEST_VARDIR/bogus/t1.frm' not found (Errcode: X)
restore table t1 from '../tmp'; restore table t1 from '../tmp';
Table Op Msg_type Msg_text Table Op Msg_type Msg_text
test.t1 restore status OK test.t1 restore status OK

View file

@ -92,7 +92,7 @@ insert into t1 values(1);
insert ignore into t1 values(1); insert ignore into t1 values(1);
replace into t1 values(100); replace into t1 values(100);
create table t2 (a varchar(200)) engine=blackhole; create table t2 (a varchar(200)) engine=blackhole;
load data infile '../../std_data/words.dat' into table t2; load data infile '../std_data_ln/words.dat' into table t2;
alter table t1 add b int; alter table t1 add b int;
alter table t1 drop b; alter table t1 drop b;
create table t3 like t1; create table t3 like t1;
@ -122,7 +122,7 @@ master-bin.000001 # Query 1 # use `test`; COMMIT
master-bin.000001 # Query 1 # use `test`; create table t2 (a varchar(200)) engine=blackhole master-bin.000001 # Query 1 # use `test`; create table t2 (a varchar(200)) engine=blackhole
master-bin.000001 # Begin_load_query 1 # ;file_id=1;block_len=581 master-bin.000001 # Begin_load_query 1 # ;file_id=1;block_len=581
master-bin.000001 # Query 1 # use `test`; COMMIT master-bin.000001 # Query 1 # use `test`; COMMIT
master-bin.000001 # Execute_load_query 1 # use `test`; load data infile '../../std_data/words.dat' into table t2 ;file_id=1 master-bin.000001 # Execute_load_query 1 # use `test`; load data infile '../std_data_ln/words.dat' into table t2 ;file_id=1
master-bin.000001 # Query 1 # use `test`; COMMIT master-bin.000001 # Query 1 # use `test`; COMMIT
master-bin.000001 # Query 1 # use `test`; alter table t1 add b int master-bin.000001 # Query 1 # use `test`; alter table t1 add b int
master-bin.000001 # Query 1 # use `test`; alter table t1 drop b master-bin.000001 # Query 1 # use `test`; alter table t1 drop b

View file

@ -17,3 +17,4 @@ CREATE TEMPORARY TABLE t2 ( PRIMARY KEY (a) ) ENGINE=MYISAM SELECT a FROM t1;
ERROR 23000: Duplicate entry '1' for key 1 ERROR 23000: Duplicate entry '1' for key 1
select * from t2; select * from t2;
ERROR 42S02: Table 'test.t2' doesn't exist ERROR 42S02: Table 'test.t2' doesn't exist
drop table t1;

View file

@ -247,3 +247,4 @@ lpad(c1,3,'
select rpad(c1,3,'ö'), rpad('ö',3,c1) from t1; select rpad(c1,3,'ö'), rpad('ö',3,c1) from t1;
rpad(c1,3,'ö') rpad('ö',3,c1) rpad(c1,3,'ö') rpad('ö',3,c1)
ßöö ößß ßöö ößß
drop table t1;

View file

@ -238,6 +238,7 @@ ERROR HY000: Operation DROP USER failed for 'mysqltest_2b'@'%'
create user 'mysqltest_2' identified by 'Mysqltest-2'; create user 'mysqltest_2' identified by 'Mysqltest-2';
drop user 'mysqltest_2' identified by 'Mysqltest-2'; drop user 'mysqltest_2' identified by 'Mysqltest-2';
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 'identified by 'Mysqltest-2'' at line 1 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 'identified by 'Mysqltest-2'' at line 1
drop user 'mysqltest_2';
create user '%@b'@'b'; create user '%@b'@'b';
show grants for '%@b'@'b'; show grants for '%@b'@'b';
Grants for %@b@b Grants for %@b@b
@ -279,6 +280,7 @@ Warning 1364 Field 'x509_subject' doesn't have a default value
create user mysqltest_A@'%'; create user mysqltest_A@'%';
rename user mysqltest_B@'%' to mysqltest_C@'%'; rename user mysqltest_B@'%' to mysqltest_C@'%';
drop user mysqltest_C@'%'; drop user mysqltest_C@'%';
drop user mysqltest_A@'%';
drop user mysqltest_3@localhost; drop user mysqltest_3@localhost;
set @@sql_mode=''; set @@sql_mode='';
create database mysqltest_1; create database mysqltest_1;

View file

@ -992,6 +992,7 @@ SELECT * FROM v1 WHERE EMPNUM < 10;
EMPNUM NAME GRP EMPNUM NAME GRP
0 KERI 10 0 KERI 10
9 BARRY NULL 9 BARRY NULL
DROP VIEW v1;
DROP TABLE t1,t2; DROP TABLE t1,t2;
CREATE TABLE t1 (c11 int); CREATE TABLE t1 (c11 int);
CREATE TABLE t2 (c21 int); CREATE TABLE t2 (c21 int);

View file

@ -1,6 +1,6 @@
drop table if exists t1, t2; drop table if exists t1, t2;
create table t1 (a date, b date, c date not null, d date); create table t1 (a date, b date, c date not null, d date);
load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ','; load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',';
Warnings: Warnings:
Warning 1265 Data truncated for column 'a' at row 1 Warning 1265 Data truncated for column 'a' at row 1
Warning 1265 Data truncated for column 'c' at row 1 Warning 1265 Data truncated for column 'c' at row 1
@ -8,7 +8,7 @@ Warning 1265 Data truncated for column 'd' at row 1
Warning 1265 Data truncated for column 'a' at row 2 Warning 1265 Data truncated for column 'a' at row 2
Warning 1265 Data truncated for column 'b' at row 2 Warning 1265 Data truncated for column 'b' at row 2
Warning 1265 Data truncated for column 'd' at row 2 Warning 1265 Data truncated for column 'd' at row 2
load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ',' IGNORE 2 LINES; load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',' IGNORE 2 LINES;
SELECT * from t1; SELECT * from t1;
a b c d a b c d
0000-00-00 NULL 0000-00-00 0000-00-00 0000-00-00 NULL 0000-00-00 0000-00-00
@ -16,7 +16,7 @@ a b c d
2003-03-03 2003-03-03 2003-03-03 NULL 2003-03-03 2003-03-03 2003-03-03 NULL
2003-03-03 2003-03-03 2003-03-03 NULL 2003-03-03 2003-03-03 2003-03-03 NULL
truncate table t1; truncate table t1;
load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ',' LINES STARTING BY ',' (b,c,d); load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',' LINES STARTING BY ',' (b,c,d);
Warnings: Warnings:
Warning 1265 Data truncated for column 'c' at row 1 Warning 1265 Data truncated for column 'c' at row 1
Warning 1265 Data truncated for column 'd' at row 1 Warning 1265 Data truncated for column 'd' at row 1
@ -29,7 +29,7 @@ NULL 0000-00-00 0000-00-00 0000-00-00
NULL 2003-03-03 2003-03-03 NULL NULL 2003-03-03 2003-03-03 NULL
drop table t1; drop table t1;
create table t1 (a text, b text); create table t1 (a text, b text);
load data infile '../../std_data/loaddata2.dat' into table t1 fields terminated by ',' enclosed by ''''; load data infile '../std_data_ln/loaddata2.dat' into table t1 fields terminated by ',' enclosed by '''';
Warnings: Warnings:
Warning 1261 Row 3 doesn't contain data for all columns Warning 1261 Row 3 doesn't contain data for all columns
select concat('|',a,'|'), concat('|',b,'|') from t1; select concat('|',a,'|'), concat('|',b,'|') from t1;
@ -41,7 +41,7 @@ Field 3,'Field 4|
|Field 6| | 'Field 7'| |Field 6| | 'Field 7'|
drop table t1; drop table t1;
create table t1 (a int, b char(10)); create table t1 (a int, b char(10));
load data infile '../../std_data/loaddata3.dat' into table t1 fields terminated by '' enclosed by '' ignore 1 lines; load data infile '../std_data_ln/loaddata3.dat' into table t1 fields terminated by '' enclosed by '' ignore 1 lines;
Warnings: Warnings:
Warning 1264 Out of range value for column 'a' at row 3 Warning 1264 Out of range value for column 'a' at row 3
Warning 1262 Row 3 was truncated; it contained more data than there were input columns Warning 1262 Row 3 was truncated; it contained more data than there were input columns
@ -55,7 +55,7 @@ a b
3 row 3 3 row 3
0 1234567890 0 1234567890
truncate table t1; truncate table t1;
load data infile '../../std_data/loaddata4.dat' into table t1 fields terminated by '' enclosed by '' lines terminated by '' ignore 1 lines; load data infile '../std_data_ln/loaddata4.dat' into table t1 fields terminated by '' enclosed by '' lines terminated by '' ignore 1 lines;
Warnings: Warnings:
Warning 1264 Out of range value for column 'a' at row 4 Warning 1264 Out of range value for column 'a' at row 4
Warning 1261 Row 4 doesn't contain data for all columns Warning 1261 Row 4 doesn't contain data for all columns
@ -78,7 +78,7 @@ id
SET @@SQL_MODE=@OLD_SQL_MODE; SET @@SQL_MODE=@OLD_SQL_MODE;
drop table t1; drop table t1;
create table t1 (a varchar(20), b varchar(20)); create table t1 (a varchar(20), b varchar(20));
load data infile '../../std_data/loaddata_dq.dat' into table t1 fields terminated by ',' enclosed by '"' escaped by '"' (a,b); load data infile '../std_data_ln/loaddata_dq.dat' into table t1 fields terminated by ',' enclosed by '"' escaped by '"' (a,b);
select * from t1; select * from t1;
a b a b
field1 field2 field1 field2
@ -86,25 +86,25 @@ a"b cd"ef
a"b c"d"e a"b c"d"e
drop table t1; drop table t1;
create table t1 (a int default 100, b int, c varchar(60)); create table t1 (a int default 100, b int, c varchar(60));
load data infile '../../std_data/rpl_loaddata.dat' into table t1 (a, @b) set b=@b+10, c=concat("b=",@b); load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (a, @b) set b=@b+10, c=concat("b=",@b);
select * from t1; select * from t1;
a b c a b c
NULL 20 b=10 NULL 20 b=10
NULL 25 b=15 NULL 25 b=15
truncate table t1; truncate table t1;
load data infile '../../std_data/rpl_loaddata.dat' into table t1 (a, @b) set c= if(a is null,"oops",a); load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (a, @b) set c= if(a is null,"oops",a);
select * from t1; select * from t1;
a b c a b c
NULL NULL oops NULL NULL oops
NULL NULL oops NULL NULL oops
truncate table t1; truncate table t1;
set @c:=123; set @c:=123;
load data infile '../../std_data/rpl_loaddata.dat' into table t1 (@a, b) set c= if(@a is null,@c,b); load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (@a, b) set c= if(@a is null,@c,b);
select * from t1; select * from t1;
a b c a b c
100 10 123 100 10 123
100 15 123 100 15 123
load data infile '../../std_data/rpl_loaddata.dat' into table t1 (@a, @b); load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (@a, @b);
select * from t1; select * from t1;
a b c a b c
100 10 123 100 10 123
@ -115,25 +115,25 @@ select @a, @b;
@a @b @a @b
NULL 15 NULL 15
truncate table t1; truncate table t1;
load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, b) set c="Wow"; load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, b) set c="Wow";
select * from t1; select * from t1;
a b c a b c
1 2 Wow 1 2 Wow
3 4 Wow 3 4 Wow
5 6 Wow 5 6 Wow
truncate table t1; truncate table t1;
load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, b) set c=concat(a,"+",b,"+",@c,"+",b,"+",if(c is null,"NIL",c)); load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, b) set c=concat(a,"+",b,"+",@c,"+",b,"+",if(c is null,"NIL",c));
select * from t1; select * from t1;
a b c a b c
1 2 1+2+123+2+NIL 1 2 1+2+123+2+NIL
3 4 3+4+123+4+NIL 3 4 3+4+123+4+NIL
5 6 5+6+123+6+NIL 5 6 5+6+123+6+NIL
load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, @b); load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, @b);
ERROR HY000: Can't load value from file with fixed size rows to variable ERROR HY000: Can't load value from file with fixed size rows to variable
create table t2 (num int primary key, str varchar(10)); create table t2 (num int primary key, str varchar(10));
insert into t2 values (10,'Ten'), (15,'Fifteen'); insert into t2 values (10,'Ten'), (15,'Fifteen');
truncate table t1; truncate table t1;
load data infile '../../std_data/rpl_loaddata.dat' into table t1 (@dummy,@n) set a= @n, c= (select str from t2 where num=@n); load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (@dummy,@n) set a= @n, c= (select str from t2 where num=@n);
select * from t1; select * from t1;
a b c a b c
10 NULL Ten 10 NULL Ten

View file

@ -4,11 +4,11 @@ create table t1 (word varchar(20));
create table t2 (id int auto_increment not null primary key); create table t2 (id int auto_increment not null primary key);
insert into t1 values ("abirvalg"); insert into t1 values ("abirvalg");
insert into t2 values (); insert into t2 values ();
load data infile '../../std_data/words.dat' into table t1; load data infile '../std_data_ln/words.dat' into table t1;
load data infile '../../std_data/words.dat' into table t1; load data infile '../std_data_ln/words.dat' into table t1;
load data infile '../../std_data/words.dat' into table t1; load data infile '../std_data_ln/words.dat' into table t1;
load data infile '../../std_data/words.dat' into table t1; load data infile '../std_data_ln/words.dat' into table t1;
load data infile '../../std_data/words.dat' into table t1; load data infile '../std_data_ln/words.dat' into table t1;
insert into t1 values ("Alas"); insert into t1 values ("Alas");
flush logs; flush logs;
@ -32,13 +32,13 @@ SET INSERT_ID=1;
SET TIMESTAMP=1000000000; SET TIMESTAMP=1000000000;
insert into t2 values (); insert into t2 values ();
SET TIMESTAMP=1000000000; SET TIMESTAMP=1000000000;
load data LOCAL INFILE 'MYSQL_TEST_DIR/var/tmp/SQL_LOAD_MB-1-0' INTO table t1; load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-1-0' INTO table t1;
SET TIMESTAMP=1000000000; SET TIMESTAMP=1000000000;
load data LOCAL INFILE 'MYSQL_TEST_DIR/var/tmp/SQL_LOAD_MB-2-0' INTO table t1; load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-2-0' INTO table t1;
SET TIMESTAMP=1000000000; SET TIMESTAMP=1000000000;
load data LOCAL INFILE 'MYSQL_TEST_DIR/var/tmp/SQL_LOAD_MB-3-0' INTO table t1; load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-3-0' INTO table t1;
SET TIMESTAMP=1000000000; SET TIMESTAMP=1000000000;
load data LOCAL INFILE 'MYSQL_TEST_DIR/var/tmp/SQL_LOAD_MB-4-0' INTO table t1; load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-4-0' INTO table t1;
# End of log file # End of log file
ROLLBACK /* added by mysqlbinlog */; ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/; /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
@ -98,13 +98,13 @@ SET INSERT_ID=1;
SET TIMESTAMP=1000000000; SET TIMESTAMP=1000000000;
insert into t2 values (); insert into t2 values ();
SET TIMESTAMP=1000000000; SET TIMESTAMP=1000000000;
load data LOCAL INFILE 'MYSQL_TEST_DIR/var/tmp/SQL_LOAD_MB-1-2' INTO table t1; load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-1-2' INTO table t1;
SET TIMESTAMP=1000000000; SET TIMESTAMP=1000000000;
load data LOCAL INFILE 'MYSQL_TEST_DIR/var/tmp/SQL_LOAD_MB-2-2' INTO table t1; load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-2-2' INTO table t1;
SET TIMESTAMP=1000000000; SET TIMESTAMP=1000000000;
load data LOCAL INFILE 'MYSQL_TEST_DIR/var/tmp/SQL_LOAD_MB-3-2' INTO table t1; load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-3-2' INTO table t1;
SET TIMESTAMP=1000000000; SET TIMESTAMP=1000000000;
load data LOCAL INFILE 'MYSQL_TEST_DIR/var/tmp/SQL_LOAD_MB-4-2' INTO table t1; load data LOCAL INFILE 'MYSQLTEST_VARDIR/tmp/SQL_LOAD_MB-4-2' INTO table t1;
# End of log file # End of log file
ROLLBACK /* added by mysqlbinlog */; ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/; /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;

View file

@ -223,8 +223,8 @@ mysqltest: At line 1: Missing variable name in let
mysqltest: At line 1: Missing assignment operator in let mysqltest: At line 1: Missing assignment operator in let
mysqltest: At line 1: Missing file name in source mysqltest: At line 1: Missing file name in source
mysqltest: At line 1: Could not open file ./non_existingFile mysqltest: At line 1: Could not open file ./non_existingFile
mysqltest: In included file "./var/tmp/recursive.sql": At line 1: Source directives are nesting too deep mysqltest: In included file "MYSQLTEST_VARDIR/tmp/recursive.sql": At line 1: Source directives are nesting too deep
mysqltest: In included file "./var/tmp/error.sql": At line 1: query 'garbage ' failed: 1064: 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 'garbage' at line 1 mysqltest: In included file "MYSQLTEST_VARDIR/tmp/error.sql": At line 1: query 'garbage ' failed: 1064: 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 'garbage' at line 1
2 = outer loop variable after while 2 = outer loop variable after while
here is the sourced script here is the sourced script
@ -358,9 +358,9 @@ mysqltest: At line 1: Could not open connection 'con2': 1049 Unknown database 'i
mysqltest: At line 1: Illegal argument for port: 'illegal_port' mysqltest: At line 1: Illegal argument for port: 'illegal_port'
mysqltest: At line 1: Illegal option to connect: SMTP mysqltest: At line 1: Illegal option to connect: SMTP
OK OK
mysqltest: In included file "./var/tmp/con.sql": At line 7: Connection limit exhausted - increase MAX_CONS in mysqltest.c mysqltest: In included file "MYSQLTEST_VARDIR/tmp/con.sql": At line 7: Connection limit exhausted - increase MAX_CONS in mysqltest.c
mysqltest: In included file "./var/tmp/con.sql": At line 3: connection 'test_con1' not found in connection pool mysqltest: In included file "MYSQLTEST_VARDIR/tmp/con.sql": At line 3: connection 'test_con1' not found in connection pool
mysqltest: In included file "./var/tmp/con.sql": At line 2: Connection test_con1 already exists mysqltest: In included file "MYSQLTEST_VARDIR/tmp/con.sql": At line 2: Connection test_con1 already exists
connect(localhost,root,,test,MASTER_PORT,MASTER_SOCKET); connect(localhost,root,,test,MASTER_PORT,MASTER_SOCKET);
Output from mysqltest-x.inc Output from mysqltest-x.inc
Output from mysqltest-x.inc Output from mysqltest-x.inc

View file

@ -8,12 +8,12 @@ create database mysqltest;
use mysqltest; use mysqltest;
create table t1 (a int primary key) engine=ndb; create table t1 (a int primary key) engine=ndb;
create table t2 (a int primary key) engine=ndb; create table t2 (a int primary key) engine=ndb;
show binlog events from 102; show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info Log_name Pos Event_type Server_id End_log_pos Info
master-bin1.000001 # Query # # create database mysqltest master-bin1.000001 # Query # # create database mysqltest
master-bin1.000001 # Query # # use `mysqltest`; create table t1 (a int primary key) engine=ndb master-bin1.000001 # Query # # use `mysqltest`; create table t1 (a int primary key) engine=ndb
master-bin1.000001 # Query # # use `test`; create table t2 (a int primary key) engine=ndb master-bin1.000001 # Query # # use `test`; create table t2 (a int primary key) engine=ndb
show binlog events from 102; show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query # # create database mysqltest master-bin.000001 # Query # # create database mysqltest
master-bin.000001 # Query # # use `mysqltest`; create table t1 (a int primary key) engine=ndb master-bin.000001 # Query # # use `mysqltest`; create table t1 (a int primary key) engine=ndb
@ -21,7 +21,7 @@ master-bin.000001 # Query # # use `test`; create table t2 (a int primary key) en
reset master; reset master;
reset master; reset master;
alter table t2 add column (b int); alter table t2 add column (b int);
show binlog events from 102; show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info Log_name Pos Event_type Server_id End_log_pos Info
master-bin1.000001 # Query # # BEGIN master-bin1.000001 # Query # # BEGIN
master-bin1.000001 # Table_map # # cluster_replication.apply_status master-bin1.000001 # Table_map # # cluster_replication.apply_status
@ -32,7 +32,7 @@ reset master;
reset master; reset master;
ALTER DATABASE mysqltest CHARACTER SET latin1; ALTER DATABASE mysqltest CHARACTER SET latin1;
drop table mysqltest.t1; drop table mysqltest.t1;
show binlog events from 102; show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query # # ALTER DATABASE mysqltest CHARACTER SET latin1 master-bin.000001 # Query # # ALTER DATABASE mysqltest CHARACTER SET latin1
master-bin.000001 # Query # # BEGIN master-bin.000001 # Query # # BEGIN
@ -46,7 +46,7 @@ use test;
insert into t2 values (1,2); insert into t2 values (1,2);
drop database mysqltest; drop database mysqltest;
create table t1 (a int primary key) engine=ndb; create table t1 (a int primary key) engine=ndb;
show binlog events from 102; show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info Log_name Pos Event_type Server_id End_log_pos Info
master-bin1.000001 # Query # # BEGIN master-bin1.000001 # Query # # BEGIN
master-bin1.000001 # Table_map # # cluster_replication.apply_status master-bin1.000001 # Table_map # # cluster_replication.apply_status
@ -88,7 +88,7 @@ ENGINE = NDB;
DROP LOGFILE GROUP lg1 DROP LOGFILE GROUP lg1
ENGINE =NDB; ENGINE =NDB;
drop table t1; drop table t1;
show binlog events from 102; show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info Log_name Pos Event_type Server_id End_log_pos Info
master-bin1.000001 # Query # # CREATE LOGFILE GROUP lg1 master-bin1.000001 # Query # # CREATE LOGFILE GROUP lg1
ADD UNDOFILE 'undofile.dat' ADD UNDOFILE 'undofile.dat'

View file

@ -0,0 +1,10 @@
drop table if exists t1;
drop database if exists mysqltest;
create database mysqltest;
use mysqltest;
create table t1 (a int primary key, b int) engine=ndb;
insert into t1 values (1, 1);
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query # # use `test`; drop table if exists t1
drop database mysqltest;

Binary file not shown.

View file

@ -785,4 +785,4 @@ prepare stmt1 from @string ;
execute stmt1 ; execute stmt1 ;
prepare stmt1 from ' select * from t5 ' ; prepare stmt1 from ' select * from t5 ' ;
execute stmt1 ; execute stmt1 ;
drop table t5, t9; drop table t1, t5, t9;

View file

@ -1076,6 +1076,7 @@ a f1()
1 2 1 2
2 2 2 2
drop procedure p1// drop procedure p1//
drop function f1//
drop table t1// drop table t1//
flush query cache; flush query cache;
reset query cache; reset query cache;

View file

@ -41,3 +41,4 @@ insert into t1 values(1);
ERROR HY000: The MySQL server is running with the --read-only option so it cannot execute this statement ERROR HY000: The MySQL server is running with the --read-only option so it cannot execute this statement
drop table t1,t2; drop table t1,t2;
drop user test@localhost; drop user test@localhost;
set global read_only=0;

View file

@ -6,9 +6,9 @@ drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave; start slave;
set SQL_LOG_BIN=0; set SQL_LOG_BIN=0;
create table t1 (word char(20) not null, index(word)); create table t1 (word char(20) not null, index(word));
load data infile '../../std_data/words.dat' into table t1; load data infile '../std_data_ln/words.dat' into table t1;
create table t2 (word char(20) not null); create table t2 (word char(20) not null);
load data infile '../../std_data/words.dat' into table t2; load data infile '../std_data_ln/words.dat' into table t2;
create table t3 (word char(20) not null primary key); create table t3 (word char(20) not null primary key);
load table t1 from master; load table t1 from master;
load table t2 from master; load table t2 from master;

View file

@ -15,3 +15,4 @@ select * from t1;
n n
24 24
drop table t1; drop table t1;
delete from mysql.user where user="replicate";

View file

@ -26,3 +26,4 @@ select select_priv from mysql.user where user='user_foo' /* slave:must get Y */;
select_priv select_priv
Y Y
revoke select on *.* FROM 'user_foo'; revoke select on *.* FROM 'user_foo';
delete from mysql.user where user="user_foo";

View file

@ -12,7 +12,7 @@ PRIMARY KEY (id),
UNIQUE KEY unique_rec (name,number) UNIQUE KEY unique_rec (name,number)
) ENGINE=InnoDB; ) ENGINE=InnoDB;
LOAD DATA LOAD DATA
INFILE '../../std_data/loaddata_pair.dat' INFILE '../std_data_ln/loaddata_pair.dat'
REPLACE INTO TABLE t4 REPLACE INTO TABLE t4
(name,number); (name,number);
SELECT * FROM t4; SELECT * FROM t4;
@ -24,7 +24,7 @@ id name number
1 XXX 12345 1 XXX 12345
2 XXY 12345 2 XXY 12345
LOAD DATA LOAD DATA
INFILE '../../std_data/loaddata_pair.dat' INFILE '../std_data_ln/loaddata_pair.dat'
REPLACE INTO TABLE t4 REPLACE INTO TABLE t4
(name,number); (name,number);
SELECT * FROM t4; SELECT * FROM t4;

View file

@ -6,9 +6,9 @@ drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave; start slave;
reset master; reset master;
create table t1(a int not null auto_increment, b int, primary key(a) ); create table t1(a int not null auto_increment, b int, primary key(a) );
load data infile '../../std_data/rpl_loaddata.dat' into table t1; load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
create temporary table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60)); create temporary table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60));
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by '\n##\n' starting by '>' ignore 1 lines; load data infile '../std_data_ln/rpl_loaddata2.dat' into table t2 fields terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by '\n##\n' starting by '>' ignore 1 lines;
create table t3 (day date,id int(9),category enum('a','b','c'),name varchar(60)); create table t3 (day date,id int(9),category enum('a','b','c'),name varchar(60));
insert into t3 select * from t2; insert into t3 select * from t2;
select * from t1; select * from t1;
@ -22,13 +22,13 @@ day id category name
2003-03-22 2416 a bbbbb 2003-03-22 2416 a bbbbb
show master status; show master status;
File Position Binlog_Do_DB Binlog_Ignore_DB File Position Binlog_Do_DB Binlog_Ignore_DB
slave-bin.000001 1290 slave-bin.000001 1276
drop table t1; drop table t1;
drop table t2; drop table t2;
drop table t3; drop table t3;
create table t1(a int, b int, unique(b)); create table t1(a int, b int, unique(b));
insert into t1 values(1,10); insert into t1 values(1,10);
load data infile '../../std_data/rpl_loaddata.dat' into table t1; load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
set global sql_slave_skip_counter=1; set global sql_slave_skip_counter=1;
start slave; start slave;
show slave status; show slave status;
@ -37,7 +37,7 @@ Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File
set sql_log_bin=0; set sql_log_bin=0;
delete from t1; delete from t1;
set sql_log_bin=1; set sql_log_bin=1;
load data infile '../../std_data/rpl_loaddata.dat' into table t1; load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
stop slave; stop slave;
change master to master_user='test'; change master to master_user='test';
change master to master_user='root'; change master to master_user='root';
@ -49,7 +49,7 @@ start slave;
set sql_log_bin=0; set sql_log_bin=0;
delete from t1; delete from t1;
set sql_log_bin=1; set sql_log_bin=1;
load data infile '../../std_data/rpl_loaddata.dat' into table t1; load data infile '../std_data_ln/rpl_loaddata.dat' into table t1;
stop slave; stop slave;
reset slave; reset slave;
show slave status; show slave status;
@ -58,7 +58,7 @@ Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File
reset master; reset master;
create table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60), create table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60),
unique(day)) engine=MyISAM; unique(day)) engine=MyISAM;
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields load data infile '../std_data_ln/rpl_loaddata2.dat' into table t2 fields
terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by
'\n##\n' starting by '>' ignore 1 lines; '\n##\n' starting by '>' ignore 1 lines;
ERROR 23000: Duplicate entry '2003-03-22' for key 1 ERROR 23000: Duplicate entry '2003-03-22' for key 1
@ -73,7 +73,7 @@ day id category name
2003-03-22 2161 c asdf 2003-03-22 2161 c asdf
alter table t2 drop key day; alter table t2 drop key day;
delete from t2; delete from t2;
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields load data infile '../std_data_ln/rpl_loaddata2.dat' into table t2 fields
terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by
'\n##\n' starting by '>' ignore 1 lines; '\n##\n' starting by '>' ignore 1 lines;
ERROR 23000: Duplicate entry '2003-03-22' for key 1 ERROR 23000: Duplicate entry '2003-03-22' for key 1

View file

@ -6,7 +6,7 @@ drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave; start slave;
reset master; reset master;
create table test.t1(a int, b int, unique(b)); create table test.t1(a int, b int, unique(b));
load data infile '../../std_data/rpl_loaddata.dat' into table test.t1; load data infile '../std_data_ln/rpl_loaddata.dat' into table test.t1;
select count(*) from test.t1; select count(*) from test.t1;
count(*) count(*)
2 2

View file

@ -5,19 +5,19 @@ reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9; drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave; start slave;
create table t1(a int); create table t1(a int);
select * into outfile '../../var/master-data/rpl_loaddatalocal.select_outfile' from t1; select * into outfile 'MYSQLTEST_VARDIR/master-data/rpl_loaddatalocal.select_outfile' from t1;
truncate table t1; truncate table t1;
load data local infile './var/master-data/rpl_loaddatalocal.select_outfile' into table t1; load data local infile 'MYSQLTEST_VARDIR/master-data/rpl_loaddatalocal.select_outfile' into table t1;
select a,count(*) from t1 group by a; select a,count(*) from t1 group by a;
a count(*) a count(*)
1 10000 1 10000
drop table t1; drop table t1;
create table t1(a int); create table t1(a int);
insert into t1 values (1), (2), (2), (3); insert into t1 values (1), (2), (2), (3);
select * into outfile '../../var/master-data/rpl_loaddatalocal.select_outfile' from t1; select * into outfile 'MYSQLTEST_VARDIR/master-data/rpl_loaddatalocal.select_outfile' from t1;
drop table t1; drop table t1;
create table t1(a int primary key); create table t1(a int primary key);
load data local infile './var/master-data/rpl_loaddatalocal.select_outfile' into table t1; load data local infile 'MYSQLTEST_VARDIR/master-data/rpl_loaddatalocal.select_outfile' into table t1;
select * from t1; select * from t1;
a a
1 1

View file

@ -15,7 +15,9 @@ insert into t1 values(3, 0, 0, 0, password('does_this_work?'));
insert into t1 values(4, connection_id(), rand()*1000, rand()*1000, password('does_this_still_work?')); insert into t1 values(4, connection_id(), rand()*1000, rand()*1000, password('does_this_still_work?'));
select * into outfile 'rpl_misc_functions.outfile' from t1; select * into outfile 'rpl_misc_functions.outfile' from t1;
create table t2 like t1; create table t2 like t1;
load data local infile './var/master-data/test/rpl_misc_functions.outfile' into table t2; load data local infile 'MYSQLTEST_VARDIR/master-data/test/rpl_misc_functions.outfile' into table t2;
select * from t1, t2 where (t1.id=t2.id) and not(t1.i=t2.i and t1.r1=t2.r1 and t1.r2=t2.r2 and t1.p=t2.p); select * from t1, t2 where (t1.id=t2.id) and not(t1.i=t2.i and t1.r1=t2.r1 and t1.r2=t2.r2 and t1.p=t2.p);
id i r1 r2 p id i r1 r2 p id i r1 r2 p id i r1 r2 p
stop slave; stop slave;
drop table t1;
drop table t1;

View file

@ -9,7 +9,7 @@ drop table if exists t11;
create table t2 (n int); create table t2 (n int);
insert into t2 values(4); insert into t2 values(4);
create table t2 (s char(20)); create table t2 (s char(20));
load data infile '../../std_data/words.dat' into table t2; load data infile '../std_data_ln/words.dat' into table t2;
insert into t2 values('five'); insert into t2 values('five');
create table t1 (m int); create table t1 (m int);
insert into t1 values(15),(16),(17); insert into t1 values(15),(16),(17);
@ -40,3 +40,4 @@ set one_shot time_zone='met';
select * from t1; select * from t1;
ts ts
2005-08-12 00:00:00 2005-08-12 00:00:00
drop table t1;

View file

@ -24,7 +24,7 @@ drop database if exists rewrite;
create database rewrite; create database rewrite;
use test; use test;
create table t1 (a date, b date, c date not null, d date); create table t1 (a date, b date, c date not null, d date);
load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ','; load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',';
Warnings: Warnings:
Warning 1265 Data truncated for column 'a' at row 1 Warning 1265 Data truncated for column 'a' at row 1
Warning 1265 Data truncated for column 'c' at row 1 Warning 1265 Data truncated for column 'c' at row 1
@ -32,7 +32,7 @@ Warning 1265 Data truncated for column 'd' at row 1
Warning 1265 Data truncated for column 'a' at row 2 Warning 1265 Data truncated for column 'a' at row 2
Warning 1265 Data truncated for column 'b' at row 2 Warning 1265 Data truncated for column 'b' at row 2
Warning 1265 Data truncated for column 'd' at row 2 Warning 1265 Data truncated for column 'd' at row 2
load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ',' IGNORE 2 LINES; load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',' IGNORE 2 LINES;
select * from rewrite.t1; select * from rewrite.t1;
a b c d a b c d
0000-00-00 NULL 0000-00-00 0000-00-00 0000-00-00 NULL 0000-00-00 0000-00-00
@ -40,7 +40,7 @@ a b c d
2003-03-03 2003-03-03 2003-03-03 NULL 2003-03-03 2003-03-03 2003-03-03 NULL
2003-03-03 2003-03-03 2003-03-03 NULL 2003-03-03 2003-03-03 2003-03-03 NULL
truncate table t1; truncate table t1;
load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ',' LINES STARTING BY ',' (b,c,d); load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',' LINES STARTING BY ',' (b,c,d);
Warnings: Warnings:
Warning 1265 Data truncated for column 'c' at row 1 Warning 1265 Data truncated for column 'c' at row 1
Warning 1265 Data truncated for column 'd' at row 1 Warning 1265 Data truncated for column 'd' at row 1
@ -53,7 +53,7 @@ NULL 0000-00-00 0000-00-00 0000-00-00
NULL 2003-03-03 2003-03-03 NULL NULL 2003-03-03 2003-03-03 NULL
drop table t1; drop table t1;
create table t1 (a text, b text); create table t1 (a text, b text);
load data infile '../../std_data/loaddata2.dat' into table t1 fields terminated by ',' enclosed by ''''; load data infile '../std_data_ln/loaddata2.dat' into table t1 fields terminated by ',' enclosed by '''';
Warnings: Warnings:
Warning 1261 Row 3 doesn't contain data for all columns Warning 1261 Row 3 doesn't contain data for all columns
select concat('|',a,'|'), concat('|',b,'|') from rewrite.t1; select concat('|',a,'|'), concat('|',b,'|') from rewrite.t1;
@ -65,7 +65,7 @@ Field 3,'Field 4|
|Field 6| | 'Field 7'| |Field 6| | 'Field 7'|
drop table t1; drop table t1;
create table t1 (a int, b char(10)); create table t1 (a int, b char(10));
load data infile '../../std_data/loaddata3.dat' into table t1 fields terminated by '' enclosed by '' ignore 1 lines; load data infile '../std_data_ln/loaddata3.dat' into table t1 fields terminated by '' enclosed by '' ignore 1 lines;
Warnings: Warnings:
Warning 1264 Out of range value for column 'a' at row 3 Warning 1264 Out of range value for column 'a' at row 3
Warning 1262 Row 3 was truncated; it contained more data than there were input columns Warning 1262 Row 3 was truncated; it contained more data than there were input columns
@ -79,7 +79,7 @@ a b
3 row 3 3 row 3
0 1234567890 0 1234567890
truncate table t1; truncate table t1;
load data infile '../../std_data/loaddata4.dat' into table t1 fields terminated by '' enclosed by '' lines terminated by '' ignore 1 lines; load data infile '../std_data_ln/loaddata4.dat' into table t1 fields terminated by '' enclosed by '' lines terminated by '' ignore 1 lines;
Warnings: Warnings:
Warning 1264 Out of range value for column 'a' at row 4 Warning 1264 Out of range value for column 'a' at row 4
Warning 1261 Row 4 doesn't contain data for all columns Warning 1261 Row 4 doesn't contain data for all columns

View file

@ -13,3 +13,4 @@ n
1 1
2 2
3 3
drop table t1;

View file

@ -52,3 +52,4 @@ Master_SSL_Cert
Master_SSL_Cipher Master_SSL_Cipher
Master_SSL_Key Master_SSL_Key
Seconds_Behind_Master NULL Seconds_Behind_Master NULL
drop table t1;

View file

@ -5,7 +5,7 @@ reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9; drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave; start slave;
create table t1 (word char(20) not null); create table t1 (word char(20) not null);
load data infile '../../std_data/words.dat' into table t1; load data infile '../std_data_ln/words.dat' into table t1;
load data local infile 'MYSQL_TEST_DIR/std_data/words.dat' into table t1; load data local infile 'MYSQL_TEST_DIR/std_data/words.dat' into table t1;
select * from t1 limit 10; select * from t1 limit 10;
word word
@ -79,3 +79,4 @@ select select_priv,user from mysql.user where user = _binary'blafasel2';
select_priv user select_priv user
Y blafasel2 Y blafasel2
drop table t1; drop table t1;
delete from mysql.user where user="blafasel2";

View file

@ -30,3 +30,4 @@ flush tables with read lock;
start slave; start slave;
stop slave; stop slave;
ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
drop table t3, t4, t5;

View file

@ -12,7 +12,7 @@ create table t1(n int not null auto_increment primary key);
insert into t1 values (NULL); insert into t1 values (NULL);
drop table t1; drop table t1;
create table t1 (word char(20) not null); create table t1 (word char(20) not null);
load data infile '../../std_data/words.dat' into table t1 ignore 1 lines; load data infile '../std_data_ln/words.dat' into table t1 ignore 1 lines;
select count(*) from t1; select count(*) from t1;
count(*) count(*)
69 69
@ -26,7 +26,7 @@ master-bin.000001 # Query 1 # use `test`; insert into t1 values (NULL)
master-bin.000001 # Query 1 # use `test`; drop table t1 master-bin.000001 # Query 1 # use `test`; drop table t1
master-bin.000001 # Query 1 # use `test`; create table t1 (word char(20) not null) master-bin.000001 # Query 1 # use `test`; create table t1 (word char(20) not null)
master-bin.000001 # Begin_load_query 1 # ;file_id=1;block_len=581 master-bin.000001 # Begin_load_query 1 # ;file_id=1;block_len=581
master-bin.000001 # Execute_load_query 1 # use `test`; load data infile '../../std_data/words.dat' into table t1 ignore 1 lines ;file_id=1 master-bin.000001 # Execute_load_query 1 # use `test`; load data infile '../std_data_ln/words.dat' into table t1 ignore 1 lines ;file_id=1
master-bin.000001 # Query 1 # use `test`; drop table t1 master-bin.000001 # Query 1 # use `test`; drop table t1
show binlog events from 102 limit 1; show binlog events from 102 limit 1;
Log_name Pos Event_type Server_id End_log_pos Info Log_name Pos Event_type Server_id End_log_pos Info
@ -56,7 +56,7 @@ master-bin.000001 # Query 1 # use `test`; insert into t1 values (NULL)
master-bin.000001 # Query 1 # use `test`; drop table t1 master-bin.000001 # Query 1 # use `test`; drop table t1
master-bin.000001 # Query 1 # use `test`; create table t1 (word char(20) not null) master-bin.000001 # Query 1 # use `test`; create table t1 (word char(20) not null)
master-bin.000001 # Begin_load_query 1 # ;file_id=1;block_len=581 master-bin.000001 # Begin_load_query 1 # ;file_id=1;block_len=581
master-bin.000001 # Execute_load_query 1 # use `test`; load data infile '../../std_data/words.dat' into table t1 ignore 1 lines ;file_id=1 master-bin.000001 # Execute_load_query 1 # use `test`; load data infile '../std_data_ln/words.dat' into table t1 ignore 1 lines ;file_id=1
master-bin.000001 # Query 1 # use `test`; drop table t1 master-bin.000001 # Query 1 # use `test`; drop table t1
master-bin.000001 # Rotate 1 # master-bin.000002;pos=4 master-bin.000001 # Rotate 1 # master-bin.000002;pos=4
show binlog events in 'master-bin.000002'; show binlog events in 'master-bin.000002';
@ -74,7 +74,7 @@ master-bin.000002 514
start slave; start slave;
show binary logs; show binary logs;
Log_name File_size Log_name File_size
slave-bin.000001 1563 slave-bin.000001 1556
slave-bin.000002 352 slave-bin.000002 352
show binlog events in 'slave-bin.000001' from 4; show binlog events in 'slave-bin.000001' from 4;
Log_name Pos Event_type Server_id End_log_pos Info Log_name Pos Event_type Server_id End_log_pos Info
@ -85,7 +85,7 @@ slave-bin.000001 # Query 1 # use `test`; insert into t1 values (NULL)
slave-bin.000001 # Query 1 # use `test`; drop table t1 slave-bin.000001 # Query 1 # use `test`; drop table t1
slave-bin.000001 # Query 1 # use `test`; create table t1 (word char(20) not null) slave-bin.000001 # Query 1 # use `test`; create table t1 (word char(20) not null)
slave-bin.000001 # Begin_load_query 1 # ;file_id=1;block_len=581 slave-bin.000001 # Begin_load_query 1 # ;file_id=1;block_len=581
slave-bin.000001 # Execute_load_query 1 # use `test`; load data INFILE '../../var/tmp/SQL_LOAD-2-1-1.data' INTO table t1 ignore 1 lines ;file_id=1 slave-bin.000001 # Execute_load_query 1 # use `test`; load data INFILE '../tmp/SQL_LOAD-2-1-1.data' INTO table t1 ignore 1 lines ;file_id=1
slave-bin.000001 # Query 1 # use `test`; drop table t1 slave-bin.000001 # Query 1 # use `test`; drop table t1
slave-bin.000001 # Query 1 # use `test`; create table t5 (a int) slave-bin.000001 # Query 1 # use `test`; create table t5 (a int)
slave-bin.000001 # Query 1 # use `test`; drop table t5 slave-bin.000001 # Query 1 # use `test`; drop table t5

View file

@ -41,7 +41,7 @@ t n
2004-06-11 09:39:02 6 2004-06-11 09:39:02 6
delete from t1; delete from t1;
set time_zone='UTC'; set time_zone='UTC';
load data infile '../../std_data/rpl_timezone2.dat' into table t1; load data infile '../std_data_ln/rpl_timezone2.dat' into table t1;
Warnings: Warnings:
Warning 1265 Data truncated for column 't' at row 1 Warning 1265 Data truncated for column 't' at row 1
Warning 1261 Row 1 doesn't contain data for all columns Warning 1261 Row 1 doesn't contain data for all columns

View file

@ -208,9 +208,9 @@ select f3() //
f3() f3()
1 1
call sp1() // call sp1() //
drop table t1,t2,t3; drop view v1;
drop table t1,t2,t3,t4;
drop function f1; drop function f1;
drop function f2; drop function f2;
drop function f3; drop function f3;
drop procedure sp1; drop procedure sp1;
drop view v1;

View file

@ -134,7 +134,11 @@ drop database db2;
select type,db,name from mysql.proc; select type,db,name from mysql.proc;
type db name type db name
delete from mysql.user where user='user1' or user='user2'; delete from mysql.user where user='user1' or user='user2';
delete from mysql.user where user='' and host='%';
delete from mysql.procs_priv where user='user1' or user='user2'; delete from mysql.procs_priv where user='user1' or user='user2';
delete from mysql.procs_priv where user='' and host='%';
delete from mysql.db where user='user2';
flush privileges;
grant usage on *.* to usera@localhost; grant usage on *.* to usera@localhost;
grant usage on *.* to userb@localhost; grant usage on *.* to userb@localhost;
grant usage on *.* to userc@localhost; grant usage on *.* to userc@localhost;
@ -195,6 +199,9 @@ use test;
drop database sptest; drop database sptest;
delete from mysql.user where user='usera' or user='userb' or user='userc'; delete from mysql.user where user='usera' or user='userb' or user='userc';
delete from mysql.procs_priv where user='usera' or user='userb' or user='userc'; delete from mysql.procs_priv where user='usera' or user='userb' or user='userc';
delete from mysql.tables_priv where user='usera';
flush privileges;
drop table t1;
drop function if exists bug_9503; drop function if exists bug_9503;
create database mysqltest// create database mysqltest//
use mysqltest// use mysqltest//

View file

@ -243,4 +243,5 @@ x
NULL NULL
x x
NULL NULL
drop procedure p1;
drop tables t1,t2,t3; drop tables t1,t2,t3;

View file

@ -40,7 +40,7 @@ t9 CREATE TABLE `t9` (
`b` char(16) NOT NULL, `b` char(16) NOT NULL,
`c` int(11) NOT NULL, `c` int(11) NOT NULL,
PRIMARY KEY (`a`) PRIMARY KEY (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='TEST_DIR/var/tmp/' INDEX DIRECTORY='TEST_DIR/var/run/' ) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
alter table t9 rename t8, add column d int not null; alter table t9 rename t8, add column d int not null;
alter table t8 rename t7; alter table t8 rename t7;
rename table t7 to t9; rename table t7 to t9;
@ -53,7 +53,7 @@ t9 CREATE TABLE `t9` (
`c` int(11) NOT NULL, `c` int(11) NOT NULL,
`d` int(11) NOT NULL, `d` int(11) NOT NULL,
PRIMARY KEY (`a`) PRIMARY KEY (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='TEST_DIR/var/tmp/' INDEX DIRECTORY='TEST_DIR/var/run/' ) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
Got one of the listed errors Got one of the listed errors
Got one of the listed errors Got one of the listed errors
Got one of the listed errors Got one of the listed errors
@ -71,7 +71,7 @@ t9 CREATE TABLE `t9` (
`c` int(11) NOT NULL, `c` int(11) NOT NULL,
`d` int(11) NOT NULL, `d` int(11) NOT NULL,
PRIMARY KEY (`a`) PRIMARY KEY (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='TEST_DIR/var/tmp/' INDEX DIRECTORY='TEST_DIR/var/run/' ) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
drop database mysqltest; drop database mysqltest;
create table t1 (a int not null) engine=myisam; create table t1 (a int not null) engine=myisam;
show create table t1; show create table t1;

View file

@ -35,3 +35,13 @@ SELECT * FROM INFORMATION_SCHEMA.TRIGGERS ORDER BY trigger_name;
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER
NULL mysqltest_db1 wl2818_trg1 INSERT NULL mysqltest_db1 t1 0 NULL INSERT INTO t2 VALUES(CURRENT_USER()) ROW BEFORE NULL NULL OLD NEW NULL NULL mysqltest_db1 wl2818_trg1 INSERT NULL mysqltest_db1 t1 0 NULL INSERT INTO t2 VALUES(CURRENT_USER()) ROW BEFORE NULL NULL OLD NEW NULL
NULL mysqltest_db1 wl2818_trg2 INSERT NULL mysqltest_db1 t1 0 NULL INSERT INTO t2 VALUES(CURRENT_USER()) ROW AFTER NULL NULL OLD NEW NULL mysqltest_dfn@localhost NULL mysqltest_db1 wl2818_trg2 INSERT NULL mysqltest_db1 t1 0 NULL INSERT INTO t2 VALUES(CURRENT_USER()) ROW AFTER NULL NULL OLD NEW NULL mysqltest_dfn@localhost
DROP TRIGGER wl2818_trg1;
Warnings:
Warning 1454 No definer attribute for trigger 'mysqltest_db1'.'wl2818_trg1'. The trigger will be activated under the authorization of the invoker, which may have insufficient privileges. Please recreate the trigger.
DROP TRIGGER wl2818_trg2;
use mysqltest_db1;
DROP TABLE t1;
DROP TABLE t2;
DROP USER mysqltest_dfn@localhost;
DROP USER mysqltest_inv@localhost;
DROP DATABASE mysqltest_db1;

View file

@ -404,13 +404,13 @@ create table t1 (i int, j int, k int);
create trigger trg1 before insert on t1 for each row set new.k = new.i; create trigger trg1 before insert on t1 for each row set new.k = new.i;
create trigger trg2 after insert on t1 for each row set @b:= "Fired"; create trigger trg2 after insert on t1 for each row set @b:= "Fired";
set @b:=""; set @b:="";
load data infile '../../std_data/rpl_loaddata.dat' into table t1 (@a, i); load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (@a, i);
select *, @b from t1; select *, @b from t1;
i j k @b i j k @b
10 NULL 10 Fired 10 NULL 10 Fired
15 NULL 15 Fired 15 NULL 15 Fired
set @b:=""; set @b:="";
load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (i, j); load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (i, j);
select *, @b from t1; select *, @b from t1;
i j k @b i j k @b
10 NULL 10 Fired 10 NULL 10 Fired
@ -447,7 +447,7 @@ ERROR 42S22: Unknown column 'at' in 'OLD'
select * from t1; select * from t1;
i k i k
1 1 1 1
load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (i, k); load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (i, k);
ERROR 42S22: Unknown column 'at' in 'NEW' ERROR 42S22: Unknown column 'at' in 'NEW'
select * from t1; select * from t1;
i k i k
@ -528,7 +528,7 @@ select * from t1;
i k i k
1 1 1 1
2 2 2 2
load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (i, k); load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (i, k);
ERROR 42S22: Unknown column 'bt' in 'NEW' ERROR 42S22: Unknown column 'bt' in 'NEW'
select * from t1; select * from t1;
i k i k

View file

@ -563,3 +563,4 @@ b1+0 sum(b1) sum(b2)
0 0 0 0 0 0
1 4 4 1 4 4
2 2 2 2 2 2
drop table t1, t2;

View file

@ -31,14 +31,14 @@ select * from t1;
f1 f2 f1 f2
10 10 10 10
100000 100000 100000 100000
1.23457e+9 1234567890 1.23457e+09 1234567890
1e+10 10000000000 1e+10 10000000000
1e+15 1e+15 1e+15 1e+15
1e+20 1e+20 1e+20 1e+20
3.40282e+38 1e+50 3.40282e+38 1e+50
3.40282e+38 1e+150 3.40282e+38 1e+150
-10 -10 -10 -10
1e-5 1e-5 1e-05 1e-05
1e-10 1e-10 1e-10 1e-10
1e-15 1e-15 1e-15 1e-15
1e-20 1e-20 1e-20 1e-20

View file

@ -71,6 +71,7 @@ c_id c_name c_country
1 Bozo USA 1 Bozo USA
4 Mr. Floppy GB 4 Mr. Floppy GB
drop table t1; drop table t1;
set GLOBAL max_join_size=10;
set max_join_size=100; set max_join_size=100;
show variables like 'max_join_size'; show variables like 'max_join_size';
Variable_name Value Variable_name Value

View file

@ -1293,7 +1293,7 @@ drop view v2, v1;
drop table t1; drop table t1;
create table t1 (a int, b char(10)); create table t1 (a int, b char(10));
create view v1 as select * from t1 where a != 0 with check option; create view v1 as select * from t1 where a != 0 with check option;
load data infile '../../std_data/loaddata3.dat' into table v1 fields terminated by '' enclosed by '' ignore 1 lines; load data infile '../std_data_ln/loaddata3.dat' into table v1 fields terminated by '' enclosed by '' ignore 1 lines;
ERROR HY000: CHECK OPTION failed 'test.v1' ERROR HY000: CHECK OPTION failed 'test.v1'
select * from t1; select * from t1;
a b a b
@ -1304,7 +1304,7 @@ a b
1 row 1 1 row 1
2 row 2 2 row 2
delete from t1; delete from t1;
load data infile '../../std_data/loaddata3.dat' ignore into table v1 fields terminated by '' enclosed by '' ignore 1 lines; load data infile '../std_data_ln/loaddata3.dat' ignore into table v1 fields terminated by '' enclosed by '' ignore 1 lines;
Warnings: Warnings:
Warning 1264 Out of range value for column 'a' at row 3 Warning 1264 Out of range value for column 'a' at row 3
Error 1369 CHECK OPTION failed 'test.v1' Error 1369 CHECK OPTION failed 'test.v1'
@ -1324,14 +1324,14 @@ drop view v1;
drop table t1; drop table t1;
create table t1 (a text, b text); create table t1 (a text, b text);
create view v1 as select * from t1 where a <> 'Field A' with check option; create view v1 as select * from t1 where a <> 'Field A' with check option;
load data infile '../../std_data/loaddata2.dat' into table v1 fields terminated by ',' enclosed by ''''; load data infile '../std_data_ln/loaddata2.dat' into table v1 fields terminated by ',' enclosed by '''';
ERROR HY000: CHECK OPTION failed 'test.v1' ERROR HY000: CHECK OPTION failed 'test.v1'
select concat('|',a,'|'), concat('|',b,'|') from t1; select concat('|',a,'|'), concat('|',b,'|') from t1;
concat('|',a,'|') concat('|',b,'|') concat('|',a,'|') concat('|',b,'|')
select concat('|',a,'|'), concat('|',b,'|') from v1; select concat('|',a,'|'), concat('|',b,'|') from v1;
concat('|',a,'|') concat('|',b,'|') concat('|',a,'|') concat('|',b,'|')
delete from t1; delete from t1;
load data infile '../../std_data/loaddata2.dat' ignore into table v1 fields terminated by ',' enclosed by ''''; load data infile '../std_data_ln/loaddata2.dat' ignore into table v1 fields terminated by ',' enclosed by '''';
Warnings: Warnings:
Error 1369 CHECK OPTION failed 'test.v1' Error 1369 CHECK OPTION failed 'test.v1'
Warning 1261 Row 2 doesn't contain data for all columns Warning 1261 Row 2 doesn't contain data for all columns

View file

@ -9,6 +9,7 @@ revoke create view on test.* from test@localhost;
show grants for test@localhost; show grants for test@localhost;
Grants for test@localhost Grants for test@localhost
GRANT USAGE ON *.* TO 'test'@'localhost' GRANT USAGE ON *.* TO 'test'@'localhost'
drop user test@localhost;
create database mysqltest; create database mysqltest;
create table mysqltest.t1 (a int, b int); create table mysqltest.t1 (a int, b int);
create table mysqltest.t2 (a int, b int); create table mysqltest.t2 (a int, b int);

View file

@ -70,7 +70,7 @@ select @@warning_count;
1 1
drop table t1; drop table t1;
create table t1(a tinyint, b int not null, c date, d char(5)); create table t1(a tinyint, b int not null, c date, d char(5));
load data infile '../../std_data/warnings_loaddata.dat' into table t1 fields terminated by ','; load data infile '../std_data_ln/warnings_loaddata.dat' into table t1 fields terminated by ',';
Warnings: Warnings:
Warning 1263 Column set to default value; NULL supplied to NOT NULL column 'b' at row 2 Warning 1263 Column set to default value; NULL supplied to NOT NULL column 'b' at row 2
Warning 1265 Data truncated for column 'd' at row 3 Warning 1265 Data truncated for column 'd' at row 3

View file

@ -61,5 +61,6 @@ prepare stmt1 from "SELECT * FROM t1 PROCEDURE ANALYSE()";
execute stmt1; execute stmt1;
execute stmt1; execute stmt1;
deallocate prepare stmt1; deallocate prepare stmt1;
drop table t1;
# End of 4.1 tests # End of 4.1 tests

View file

@ -1,5 +1,5 @@
#!/bin/sh #!/bin/sh
if [ "$MYSQL_TEST_DIR" ] if [ "$MYSQL_TEST_DIR" ]
then then
rm -f $MYSQL_TEST_DIR/var/tmp/*.frm $MYSQL_TEST_DIR/var/tmp/*.MY? rm -f $MYSQLTEST_VARDIR/tmp/*.frm $MYSQLTEST_VARDIR/tmp/*.MY?
fi fi

View file

@ -13,10 +13,10 @@ set SQL_LOG_BIN=0;
drop table if exists t1, t2, t3, t4; drop table if exists t1, t2, t3, t4;
--enable_warnings --enable_warnings
create table t4(n int); create table t4(n int);
--replace_result ": 1" ": X" ": 2" ": X" ": 22" ": X" ": 23" ": X" $MYSQL_TEST_DIR MYSQL_TEST_DIR --replace_result ": 1" ": X" ": 2" ": X" ": 22" ": X" ": 23" ": X" $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
backup table t4 to '../bogus'; backup table t4 to '../bogus';
backup table t4 to '../tmp'; backup table t4 to '../tmp';
--replace_result ": 7" ": X" ": 17" ": X" $MYSQL_TEST_DIR MYSQL_TEST_DIR --replace_result ": 7" ": X" ": 17" ": X" $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
backup table t4 to '../tmp'; backup table t4 to '../tmp';
drop table t4; drop table t4;
restore table t4 from '../tmp'; restore table t4 from '../tmp';
@ -26,7 +26,7 @@ create table t1(n int);
insert into t1 values (23),(45),(67); insert into t1 values (23),(45),(67);
backup table t1 to '../tmp'; backup table t1 to '../tmp';
drop table t1; drop table t1;
--replace_result ": 1" ": X" ": 2" ": X" ": 22" ": X" ": 23" ": X" $MYSQL_TEST_DIR MYSQL_TEST_DIR --replace_result ": 1" ": X" ": 2" ": X" ": 22" ": X" ": 23" ": X" $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
restore table t1 from '../bogus'; restore table t1 from '../bogus';
restore table t1 from '../tmp'; restore table t1 from '../tmp';
select n from t1; select n from t1;
@ -55,6 +55,6 @@ unlock tables;
connection con1; connection con1;
reap; reap;
drop table t5; drop table t5;
--system rm $MYSQL_TEST_DIR/var/tmp/t?.* --system rm $MYSQLTEST_VARDIR/tmp/t?.*
# End of 4.1 tests # End of 4.1 tests

View file

@ -30,5 +30,6 @@ select * from t2;
CREATE TEMPORARY TABLE t2 ( PRIMARY KEY (a) ) ENGINE=MYISAM SELECT a FROM t1; CREATE TEMPORARY TABLE t2 ( PRIMARY KEY (a) ) ENGINE=MYISAM SELECT a FROM t1;
--error 1146 --error 1146
select * from t2; select * from t2;
drop table t1;
# End of 4.1 tests # End of 4.1 tests

View file

@ -186,5 +186,5 @@ select rpad(c1,3,'
# TODO # TODO
#select case c1 when 'ß' then 'ß' when 'ö' then 'ö' else 'c' end from t1; #select case c1 when 'ß' then 'ß' when 'ö' then 'ö' else 'c' end from t1;
#select export_set(5,c1,'ö'), export_set(5,'ö',c1) from t1; #select export_set(5,c1,'ö'), export_set(5,'ö',c1) from t1;
drop table t1;
# End of 4.1 tests # End of 4.1 tests

View file

@ -5,6 +5,9 @@
drop table if exists t1; drop table if exists t1;
--enable_warnings --enable_warnings
# Save ft_boolean_syntax variable
let $saved_ft_boolean_syntax=`select @@global.ft_boolean_syntax`;
show variables like "ft\_%"; show variables like "ft\_%";
create table t1 (b text not null); create table t1 (b text not null);
@ -25,4 +28,9 @@ set global ft_boolean_syntax='@ -><()~*:""@|';
set global ft_boolean_syntax='+ -><()~*:""@!|'; set global ft_boolean_syntax='+ -><()~*:""@!|';
drop table t1; drop table t1;
# Restore ft_boolean_syntax variable
--disable_query_log
eval set global ft_boolean_syntax='$saved_ft_boolean_syntax';
--enable_query_log
# End of 4.1 tests # End of 4.1 tests

View file

@ -286,6 +286,7 @@ drop user 'mysqltest_1b', 'mysqltest_2b', 'mysqltest_3b';
create user 'mysqltest_2' identified by 'Mysqltest-2'; create user 'mysqltest_2' identified by 'Mysqltest-2';
--error 1064 --error 1064
drop user 'mysqltest_2' identified by 'Mysqltest-2'; drop user 'mysqltest_2' identified by 'Mysqltest-2';
drop user 'mysqltest_2';
# #
# Strange user names # Strange user names
create user '%@b'@'b'; create user '%@b'@'b';
@ -325,6 +326,7 @@ insert into mysql.user set host='%', user='mysqltest_B';
create user mysqltest_A@'%'; create user mysqltest_A@'%';
rename user mysqltest_B@'%' to mysqltest_C@'%'; rename user mysqltest_B@'%' to mysqltest_C@'%';
drop user mysqltest_C@'%'; drop user mysqltest_C@'%';
drop user mysqltest_A@'%';
disconnect user4; disconnect user4;
connection default; connection default;
drop user mysqltest_3@localhost; drop user mysqltest_3@localhost;

View file

@ -1,2 +1,2 @@
--run-as-service --run-as-service
--log=$MYSQL_TEST_DIR/var/log/im.log --log=$MYSQLTEST_VARDIR/log/im.log

View file

@ -48,7 +48,7 @@
# - check the configuration file; # - check the configuration file;
--exec grep server_id $MYSQL_TEST_DIR/var/im.cnf ; --exec grep server_id $MYSQLTEST_VARDIR/im.cnf ;
# - check the running instances. # - check the running instances.
@ -79,7 +79,7 @@ SET mysqld1.server_id = 11;
# - check that the configuration file has been updated (i.e. contains # - check that the configuration file has been updated (i.e. contains
# server_id=SERVER_ID for the instance); # server_id=SERVER_ID for the instance);
--exec grep server_id $MYSQL_TEST_DIR/var/im.cnf ; --exec grep server_id $MYSQLTEST_VARDIR/im.cnf ;
# - (for mysqld1) check that the running instance has not been affected: # - (for mysqld1) check that the running instance has not been affected:
# connect to the instance and check that 'SHOW VARIABLES LIKE 'server_id'' # connect to the instance and check that 'SHOW VARIABLES LIKE 'server_id''
@ -104,7 +104,7 @@ SET mysqld2.server_id = 12;
# - check that the configuration file has been updated (i.e. contains # - check that the configuration file has been updated (i.e. contains
# server_id=SERVER_ID for the instance); # server_id=SERVER_ID for the instance);
--exec grep server_id $MYSQL_TEST_DIR/var/im.cnf ; --exec grep server_id $MYSQLTEST_VARDIR/im.cnf ;
# - check that internal cache of Instance Manager has not been affected # - check that internal cache of Instance Manager has not been affected
# (i.e. SHOW INSTANCE OPTIONS <instance> does not contain updated value). # (i.e. SHOW INSTANCE OPTIONS <instance> does not contain updated value).
@ -122,7 +122,7 @@ FLUSH INSTANCES;
# - check that the configuration file has not been updated; # - check that the configuration file has not been updated;
--exec grep server_id $MYSQL_TEST_DIR/var/im.cnf ; --exec grep server_id $MYSQLTEST_VARDIR/im.cnf ;
# - (for mysqld1) check that the running instance has not been affected: # - (for mysqld1) check that the running instance has not been affected:
# connect to the instance and check that 'SHOW VARIABLES LIKE 'server_id'' # connect to the instance and check that 'SHOW VARIABLES LIKE 'server_id''

View file

@ -55,7 +55,7 @@
# - check the configuration file; # - check the configuration file;
--exec grep server_id $MYSQL_TEST_DIR/var/im.cnf ; --exec grep server_id $MYSQLTEST_VARDIR/im.cnf ;
# - check the running instances. # - check the running instances.
@ -86,7 +86,7 @@ UNSET mysqld1.server_id;
# - check that the configuration file has been updated (i.e. does not # - check that the configuration file has been updated (i.e. does not
# contain 'server_id=' line for the instance); # contain 'server_id=' line for the instance);
--exec grep server_id $MYSQL_TEST_DIR/var/im.cnf ; --exec grep server_id $MYSQLTEST_VARDIR/im.cnf ;
# - check that the running instance has not been affected: connect to the # - check that the running instance has not been affected: connect to the
# instance and check that 'SHOW VARIABLES LIKE 'server_id'' returns non-zero # instance and check that 'SHOW VARIABLES LIKE 'server_id'' returns non-zero
@ -111,7 +111,7 @@ UNSET mysqld2.server_id;
# - check that the configuration file has been updated (i.e. does not # - check that the configuration file has been updated (i.e. does not
# contain 'server_id=' line for the instance); # contain 'server_id=' line for the instance);
--exec grep server_id $MYSQL_TEST_DIR/var/im.cnf || true; --exec grep server_id $MYSQLTEST_VARDIR/im.cnf || true;
# - check that internal cache of Instance Manager is not affected (i.e. SHOW # - check that internal cache of Instance Manager is not affected (i.e. SHOW
# INSTANCE OPTIONS <instance> contains non-zero value for server_id); # INSTANCE OPTIONS <instance> contains non-zero value for server_id);
@ -130,7 +130,7 @@ FLUSH INSTANCES;
# - check that the configuration file has not been updated (i.e. does not # - check that the configuration file has not been updated (i.e. does not
# contain 'server_id=' for the instance); # contain 'server_id=' for the instance);
--exec grep server_id $MYSQL_TEST_DIR/var/im.cnf || true; --exec grep server_id $MYSQLTEST_VARDIR/im.cnf || true;
# - (for mysqld1) check that the running instance has not been affected: # - (for mysqld1) check that the running instance has not been affected:
# connect to the instance and check that 'SHOW VARIABLES LIKE 'server_id'' # connect to the instance and check that 'SHOW VARIABLES LIKE 'server_id''

View file

@ -800,9 +800,9 @@ DROP FUNCTION func2;
# #
create database mysqltest; create database mysqltest;
create table mysqltest.t1(a int); create table mysqltest.t1(a int);
--exec chmod -r $MYSQL_TEST_DIR/var/master-data/mysqltest --exec chmod -r $MYSQLTEST_VARDIR/master-data/mysqltest
select table_schema from information_schema.tables where table_schema='mysqltest'; select table_schema from information_schema.tables where table_schema='mysqltest';
--exec chmod +r $MYSQL_TEST_DIR/var/master-data/mysqltest --exec chmod +r $MYSQLTEST_VARDIR/master-data/mysqltest
drop database mysqltest; drop database mysqltest;
# #

View file

@ -63,6 +63,7 @@ drop table t1;
# #
# one statement roll back inside transation # one statement roll back inside transation
# #
let $save_query_cache_size=`select @@global.query_cache_size`;
set GLOBAL query_cache_size=1355776; set GLOBAL query_cache_size=1355776;
CREATE TABLE t1 ( id int(10) NOT NULL auto_increment, a varchar(25) default NULL, PRIMARY KEY (id), UNIQUE KEY a (a)) ENGINE=innodb; CREATE TABLE t1 ( id int(10) NOT NULL auto_increment, a varchar(25) default NULL, PRIMARY KEY (id), UNIQUE KEY a (a)) ENGINE=innodb;
CREATE TABLE t2 ( id int(10) NOT NULL auto_increment, b varchar(25) default NULL, PRIMARY KEY (id), UNIQUE KEY b (b)) ENGINE=innodb; CREATE TABLE t2 ( id int(10) NOT NULL auto_increment, b varchar(25) default NULL, PRIMARY KEY (id), UNIQUE KEY b (b)) ENGINE=innodb;
@ -79,5 +80,8 @@ insert into t3 VALUES ( NULL, 1, 1, 2 );
commit; commit;
select t1.* from t1, t2, t3 where t3.state & 1 = 0 and t3.t1_id = t1.id and t3.t2_id = t2.id and t1.id = 1 order by t1.a asc; select t1.* from t1, t2, t3 where t3.state & 1 = 0 and t3.t1_id = t1.id and t3.t2_id = t2.id and t1.id = 1 order by t1.a asc;
drop table t3,t2,t1; drop table t3,t2,t1;
--disable_query_log
eval set GLOBAL query_cache_size=$save_query_cache_size;
--enable_query_log
# End of 4.1 tests # End of 4.1 tests

View file

@ -99,27 +99,22 @@ create table t1(number int auto_increment primary key, original_value varchar(50
set @value= "aa"; set @value= "aa";
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value); insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
--replace_result e-0 e- e+0 e+
--query_vertical select * from t1 where number =last_insert_id() --query_vertical select * from t1 where number =last_insert_id()
set @value= "1aa"; set @value= "1aa";
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value); insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
--replace_result e-0 e- e+0 e+
--query_vertical select * from t1 where number =last_insert_id() --query_vertical select * from t1 where number =last_insert_id()
set @value= "aa1"; set @value= "aa1";
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value); insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
--replace_result e-0 e- e+0 e+
--query_vertical select * from t1 where number =last_insert_id() --query_vertical select * from t1 where number =last_insert_id()
set @value= "1e+1111111111a"; set @value= "1e+1111111111a";
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value); insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
--replace_result e-0 e- e+0 e+
--query_vertical select * from t1 where number =last_insert_id() --query_vertical select * from t1 where number =last_insert_id()
set @value= "-1e+1111111111a"; set @value= "-1e+1111111111a";
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value); insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
--replace_result e-0 e- e+0 e+
--query_vertical select * from t1 where number =last_insert_id() --query_vertical select * from t1 where number =last_insert_id()
--error 1367 --error 1367
@ -130,22 +125,18 @@ set @value= -1e+1111111111;
set @value= 1e+111; set @value= 1e+111;
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value); insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
--replace_result e-0 e- e+0 e+
--query_vertical select * from t1 where number =last_insert_id() --query_vertical select * from t1 where number =last_insert_id()
set @value= -1e+111; set @value= -1e+111;
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value); insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
--replace_result e-0 e- e+0 e+
--query_vertical select * from t1 where number =last_insert_id() --query_vertical select * from t1 where number =last_insert_id()
set @value= 1; set @value= 1;
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value); insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
--replace_result e-0 e- e+0 e+
--query_vertical select * from t1 where number =last_insert_id() --query_vertical select * from t1 where number =last_insert_id()
set @value= -1; set @value= -1;
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value); insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
--replace_result e-0 e- e+0 e+
--query_vertical select * from t1 where number =last_insert_id() --query_vertical select * from t1 where number =last_insert_id()
drop table t1; drop table t1;

View file

@ -700,6 +700,7 @@ SELECT COALESCE(t2.EMPNUM,t1.EMPNUM) AS EMPNUM, NAME, GRP
SELECT * FROM v1; SELECT * FROM v1;
SELECT * FROM v1 WHERE EMPNUM < 10; SELECT * FROM v1 WHERE EMPNUM < 10;
DROP VIEW v1;
DROP TABLE t1,t2; DROP TABLE t1,t2;
# #

View file

@ -7,25 +7,25 @@ drop table if exists t1, t2;
--enable_warnings --enable_warnings
create table t1 (a date, b date, c date not null, d date); create table t1 (a date, b date, c date not null, d date);
load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ','; load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',';
load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ',' IGNORE 2 LINES; load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',' IGNORE 2 LINES;
SELECT * from t1; SELECT * from t1;
truncate table t1; truncate table t1;
load data infile '../../std_data/loaddata1.dat' into table t1 fields terminated by ',' LINES STARTING BY ',' (b,c,d); load data infile '../std_data_ln/loaddata1.dat' into table t1 fields terminated by ',' LINES STARTING BY ',' (b,c,d);
SELECT * from t1; SELECT * from t1;
drop table t1; drop table t1;
create table t1 (a text, b text); create table t1 (a text, b text);
load data infile '../../std_data/loaddata2.dat' into table t1 fields terminated by ',' enclosed by ''''; load data infile '../std_data_ln/loaddata2.dat' into table t1 fields terminated by ',' enclosed by '''';
select concat('|',a,'|'), concat('|',b,'|') from t1; select concat('|',a,'|'), concat('|',b,'|') from t1;
drop table t1; drop table t1;
create table t1 (a int, b char(10)); create table t1 (a int, b char(10));
load data infile '../../std_data/loaddata3.dat' into table t1 fields terminated by '' enclosed by '' ignore 1 lines; load data infile '../std_data_ln/loaddata3.dat' into table t1 fields terminated by '' enclosed by '' ignore 1 lines;
select * from t1; select * from t1;
truncate table t1; truncate table t1;
load data infile '../../std_data/loaddata4.dat' into table t1 fields terminated by '' enclosed by '' lines terminated by '' ignore 1 lines; load data infile '../std_data_ln/loaddata4.dat' into table t1 fields terminated by '' enclosed by '' lines terminated by '' ignore 1 lines;
# The empty line last comes from the end line field in the file # The empty line last comes from the end line field in the file
select * from t1; select * from t1;
@ -38,23 +38,23 @@ SET @OLD_SQL_MODE=@@SQL_MODE, @@SQL_MODE=NO_AUTO_VALUE_ON_ZERO;
create table t1(id integer not null auto_increment primary key); create table t1(id integer not null auto_increment primary key);
insert into t1 values(0); insert into t1 values(0);
disable_query_log; disable_query_log;
eval SELECT * INTO OUTFILE '$MYSQL_TEST_DIR/var/tmp/t1' from t1; eval SELECT * INTO OUTFILE '$MYSQLTEST_VARDIR/tmp/t1' from t1;
delete from t1; delete from t1;
eval load data infile '$MYSQL_TEST_DIR/var/tmp/t1' into table t1; eval load data infile '$MYSQLTEST_VARDIR/tmp/t1' into table t1;
enable_query_log; enable_query_log;
select * from t1; select * from t1;
--exec rm $MYSQL_TEST_DIR/var/tmp/t1 --exec rm $MYSQLTEST_VARDIR/tmp/t1
disable_query_log; disable_query_log;
eval SELECT * INTO OUTFILE '$MYSQL_TEST_DIR/var/tmp/t1' eval SELECT * INTO OUTFILE '$MYSQLTEST_VARDIR/tmp/t1'
FIELDS TERMINATED BY '' OPTIONALLY ENCLOSED BY '' LINES TERMINATED BY '\r\n' FIELDS TERMINATED BY '' OPTIONALLY ENCLOSED BY '' LINES TERMINATED BY '\r\n'
FROM t1; FROM t1;
delete from t1; delete from t1;
eval load data infile '$MYSQL_TEST_DIR/var/tmp/t1' into table t1 eval load data infile '$MYSQLTEST_VARDIR/tmp/t1' into table t1
FIELDS TERMINATED BY '' OPTIONALLY ENCLOSED BY '' LINES TERMINATED BY '\r\n'; FIELDS TERMINATED BY '' OPTIONALLY ENCLOSED BY '' LINES TERMINATED BY '\r\n';
enable_query_log; enable_query_log;
select * from t1; select * from t1;
--exec rm $MYSQL_TEST_DIR/var/tmp/t1 --exec rm $MYSQLTEST_VARDIR/tmp/t1
SET @@SQL_MODE=@OLD_SQL_MODE; SET @@SQL_MODE=@OLD_SQL_MODE;
drop table t1; drop table t1;
@ -63,7 +63,7 @@ drop table t1;
# ENCLOSED # ENCLOSED
# #
create table t1 (a varchar(20), b varchar(20)); create table t1 (a varchar(20), b varchar(20));
load data infile '../../std_data/loaddata_dq.dat' into table t1 fields terminated by ',' enclosed by '"' escaped by '"' (a,b); load data infile '../std_data_ln/loaddata_dq.dat' into table t1 fields terminated by ',' enclosed by '"' escaped by '"' (a,b);
select * from t1; select * from t1;
drop table t1; drop table t1;
@ -74,40 +74,40 @@ drop table t1;
# #
create table t1 (a int default 100, b int, c varchar(60)); create table t1 (a int default 100, b int, c varchar(60));
# we can do something like this # we can do something like this
load data infile '../../std_data/rpl_loaddata.dat' into table t1 (a, @b) set b=@b+10, c=concat("b=",@b); load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (a, @b) set b=@b+10, c=concat("b=",@b);
select * from t1; select * from t1;
truncate table t1; truncate table t1;
# we can use filled fields in expressions # we can use filled fields in expressions
# we also assigning NULL value to field with non-NULL default here # we also assigning NULL value to field with non-NULL default here
load data infile '../../std_data/rpl_loaddata.dat' into table t1 (a, @b) set c= if(a is null,"oops",a); load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (a, @b) set c= if(a is null,"oops",a);
select * from t1; select * from t1;
truncate table t1; truncate table t1;
# we even can use variables in set clause, and missed columns will be set # we even can use variables in set clause, and missed columns will be set
# with default values # with default values
set @c:=123; set @c:=123;
load data infile '../../std_data/rpl_loaddata.dat' into table t1 (@a, b) set c= if(@a is null,@c,b); load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (@a, b) set c= if(@a is null,@c,b);
select * from t1; select * from t1;
# let us test side-effect of such load # let us test side-effect of such load
load data infile '../../std_data/rpl_loaddata.dat' into table t1 (@a, @b); load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (@a, @b);
select * from t1; select * from t1;
select @a, @b; select @a, @b;
truncate table t1; truncate table t1;
# now going to test fixed field-row file format # now going to test fixed field-row file format
load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, b) set c="Wow"; load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, b) set c="Wow";
select * from t1; select * from t1;
truncate table t1; truncate table t1;
# this also should work # this also should work
load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, b) set c=concat(a,"+",b,"+",@c,"+",b,"+",if(c is null,"NIL",c)); load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, b) set c=concat(a,"+",b,"+",@c,"+",b,"+",if(c is null,"NIL",c));
select * from t1; select * from t1;
# and this should bark # and this should bark
--error 1409 --error 1409
load data infile '../../std_data/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, @b); load data infile '../std_data_ln/loaddata5.dat' into table t1 fields terminated by '' enclosed by '' (a, @b);
# Now let us test LOAD DATA with subselect # Now let us test LOAD DATA with subselect
create table t2 (num int primary key, str varchar(10)); create table t2 (num int primary key, str varchar(10));
insert into t2 values (10,'Ten'), (15,'Fifteen'); insert into t2 values (10,'Ten'), (15,'Fifteen');
truncate table t1; truncate table t1;
load data infile '../../std_data/rpl_loaddata.dat' into table t1 (@dummy,@n) set a= @n, c= (select str from t2 where num=@n); load data infile '../std_data_ln/rpl_loaddata.dat' into table t1 (@dummy,@n) set a= @n, c= (select str from t2 where num=@n);
select * from t1; select * from t1;
# cleanup # cleanup

View file

@ -711,14 +711,14 @@ eval set storage_engine=$default;
# Test how DROP TABLE works if the index or data file doesn't exists # Test how DROP TABLE works if the index or data file doesn't exists
create table t1 (a int) engine=myisam; create table t1 (a int) engine=myisam;
system rm ./var/master-data/test/t1.MYI ; system rm $MYSQLTEST_VARDIR/master-data/test/t1.MYI ;
drop table if exists t1; drop table if exists t1;
create table t1 (a int) engine=myisam; create table t1 (a int) engine=myisam;
system rm ./var/master-data/test/t1.MYI ; system rm $MYSQLTEST_VARDIR/master-data/test/t1.MYI ;
--error 1051,6 --error 1051,6
drop table t1; drop table t1;
create table t1 (a int) engine=myisam; create table t1 (a int) engine=myisam;
system rm ./var/master-data/test/t1.MYD ; system rm $MYSQLTEST_VARDIR/master-data/test/t1.MYD ;
--error 1105,6,29 --error 1105,6,29
drop table t1; drop table t1;
--error 1051 --error 1051

View file

@ -24,11 +24,11 @@ insert into t2 values ();
# test for load data and load data distributed among the several # test for load data and load data distributed among the several
# files (we need to fill up first binlog) # files (we need to fill up first binlog)
load data infile '../../std_data/words.dat' into table t1; load data infile '../std_data_ln/words.dat' into table t1;
load data infile '../../std_data/words.dat' into table t1; load data infile '../std_data_ln/words.dat' into table t1;
load data infile '../../std_data/words.dat' into table t1; load data infile '../std_data_ln/words.dat' into table t1;
load data infile '../../std_data/words.dat' into table t1; load data infile '../std_data_ln/words.dat' into table t1;
load data infile '../../std_data/words.dat' into table t1; load data infile '../std_data_ln/words.dat' into table t1;
# simple query to show more in second binlog # simple query to show more in second binlog
insert into t1 values ("Alas"); insert into t1 values ("Alas");
flush logs; flush logs;
@ -43,29 +43,29 @@ select "--- Local --" as "";
# be time dependend. Better than nothing. # be time dependend. Better than nothing.
# #
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ $MYSQL_TEST_DIR/var/log/master-bin.000001 --exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ $MYSQLTEST_VARDIR/log/master-bin.000001
# this should not fail but shouldn't produce any working statements # this should not fail but shouldn't produce any working statements
--disable_query_log --disable_query_log
select "--- Broken LOAD DATA --" as ""; select "--- Broken LOAD DATA --" as "";
--enable_query_log --enable_query_log
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ $MYSQL_TEST_DIR/var/log/master-bin.000002 --exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ $MYSQLTEST_VARDIR/log/master-bin.000002
# this should show almost nothing # this should show almost nothing
--disable_query_log --disable_query_log
select "--- --database --" as ""; select "--- --database --" as "";
--enable_query_log --enable_query_log
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --database=nottest $MYSQL_TEST_DIR/var/log/master-bin.000001 --exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --database=nottest $MYSQLTEST_VARDIR/log/master-bin.000001
# this test for position option # this test for position option
--disable_query_log --disable_query_log
select "--- --position --" as ""; select "--- --position --" as "";
--enable_query_log --enable_query_log
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --position=235 $MYSQL_TEST_DIR/var/log/master-bin.000002 --exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --position=235 $MYSQLTEST_VARDIR/log/master-bin.000002
# These are tests for remote binlog. # These are tests for remote binlog.
# They should return the same as previous test. # They should return the same as previous test.
@ -75,29 +75,29 @@ select "--- Remote --" as "";
--enable_query_log --enable_query_log
# This is broken now # This is broken now
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 --exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001
# This is broken too # This is broken too
--disable_query_log --disable_query_log
select "--- Broken LOAD DATA --" as ""; select "--- Broken LOAD DATA --" as "";
--enable_query_log --enable_query_log
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002 --exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002
# And this too ! (altough it is documented) # And this too ! (altough it is documented)
--disable_query_log --disable_query_log
select "--- --database --" as ""; select "--- --database --" as "";
--enable_query_log --enable_query_log
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT --database=nottest master-bin.000001 --exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT --database=nottest master-bin.000001
# Strangely but this works # Strangely but this works
--disable_query_log --disable_query_log
select "--- --position --" as ""; select "--- --position --" as "";
--enable_query_log --enable_query_log
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --read-from-remote-server --position=235 --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002 --exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --read-from-remote-server --position=235 --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002
# Bug#7853 (mysqlbinlog does not accept input from stdin) # Bug#7853 (mysqlbinlog does not accept input from stdin)
--disable_query_log --disable_query_log

View file

@ -43,28 +43,28 @@ select "--- Local --" as "";
# be time dependent (the Start events). Better than nothing. # be time dependent (the Start events). Better than nothing.
# #
--exec $MYSQL_BINLOG --short-form $MYSQL_TEST_DIR/var/log/master-bin.000001 --exec $MYSQL_BINLOG --short-form $MYSQLTEST_VARDIR/log/master-bin.000001
--disable_query_log --disable_query_log
select "--- offset --" as ""; select "--- offset --" as "";
--enable_query_log --enable_query_log
--exec $MYSQL_BINLOG --short-form --offset=2 $MYSQL_TEST_DIR/var/log/master-bin.000001 --exec $MYSQL_BINLOG --short-form --offset=2 $MYSQLTEST_VARDIR/log/master-bin.000001
--disable_query_log --disable_query_log
select "--- start-position --" as ""; select "--- start-position --" as "";
--enable_query_log --enable_query_log
--exec $MYSQL_BINLOG --short-form --start-position=604 $MYSQL_TEST_DIR/var/log/master-bin.000001 --exec $MYSQL_BINLOG --short-form --start-position=604 $MYSQLTEST_VARDIR/log/master-bin.000001
--disable_query_log --disable_query_log
select "--- stop-position --" as ""; select "--- stop-position --" as "";
--enable_query_log --enable_query_log
--exec $MYSQL_BINLOG --short-form --stop-position=604 $MYSQL_TEST_DIR/var/log/master-bin.000001 --exec $MYSQL_BINLOG --short-form --stop-position=604 $MYSQLTEST_VARDIR/log/master-bin.000001
--disable_query_log --disable_query_log
select "--- start-datetime --" as ""; select "--- start-datetime --" as "";
--enable_query_log --enable_query_log
--exec $MYSQL_BINLOG --short-form "--start-datetime=2020-01-21 15:32:24" $MYSQL_TEST_DIR/var/log/master-bin.000001 --exec $MYSQL_BINLOG --short-form "--start-datetime=2020-01-21 15:32:24" $MYSQLTEST_VARDIR/log/master-bin.000001
--disable_query_log --disable_query_log
select "--- stop-datetime --" as ""; select "--- stop-datetime --" as "";
--enable_query_log --enable_query_log
--exec $MYSQL_BINLOG --short-form "--stop-datetime=2020-01-21 15:32:24" $MYSQL_TEST_DIR/var/log/master-bin.000001 --exec $MYSQL_BINLOG --short-form "--stop-datetime=2020-01-21 15:32:24" $MYSQLTEST_VARDIR/log/master-bin.000001
--disable_query_log --disable_query_log
select "--- Local with 2 binlogs on command line --" as ""; select "--- Local with 2 binlogs on command line --" as "";
@ -72,28 +72,28 @@ select "--- Local with 2 binlogs on command line --" as "";
# This is to verify that some options apply only to first, or last binlog # This is to verify that some options apply only to first, or last binlog
--exec $MYSQL_BINLOG --short-form $MYSQL_TEST_DIR/var/log/master-bin.000001 $MYSQL_TEST_DIR/var/log/master-bin.000002 --exec $MYSQL_BINLOG --short-form $MYSQLTEST_VARDIR/log/master-bin.000001 $MYSQLTEST_VARDIR/log/master-bin.000002
--disable_query_log --disable_query_log
select "--- offset --" as ""; select "--- offset --" as "";
--enable_query_log --enable_query_log
--exec $MYSQL_BINLOG --short-form --offset=2 $MYSQL_TEST_DIR/var/log/master-bin.000001 $MYSQL_TEST_DIR/var/log/master-bin.000002 --exec $MYSQL_BINLOG --short-form --offset=2 $MYSQLTEST_VARDIR/log/master-bin.000001 $MYSQLTEST_VARDIR/log/master-bin.000002
--disable_query_log --disable_query_log
select "--- start-position --" as ""; select "--- start-position --" as "";
--enable_query_log --enable_query_log
--exec $MYSQL_BINLOG --short-form --start-position=604 $MYSQL_TEST_DIR/var/log/master-bin.000001 $MYSQL_TEST_DIR/var/log/master-bin.000002 --exec $MYSQL_BINLOG --short-form --start-position=604 $MYSQLTEST_VARDIR/log/master-bin.000001 $MYSQLTEST_VARDIR/log/master-bin.000002
--disable_query_log --disable_query_log
select "--- stop-position --" as ""; select "--- stop-position --" as "";
--enable_query_log --enable_query_log
--exec $MYSQL_BINLOG --short-form --stop-position=130 $MYSQL_TEST_DIR/var/log/master-bin.000001 $MYSQL_TEST_DIR/var/log/master-bin.000002 --exec $MYSQL_BINLOG --short-form --stop-position=130 $MYSQLTEST_VARDIR/log/master-bin.000001 $MYSQLTEST_VARDIR/log/master-bin.000002
--disable_query_log --disable_query_log
select "--- start-datetime --" as ""; select "--- start-datetime --" as "";
--enable_query_log --enable_query_log
--exec $MYSQL_BINLOG --short-form "--start-datetime=2020-01-21 15:32:24" $MYSQL_TEST_DIR/var/log/master-bin.000001 $MYSQL_TEST_DIR/var/log/master-bin.000002 --exec $MYSQL_BINLOG --short-form "--start-datetime=2020-01-21 15:32:24" $MYSQLTEST_VARDIR/log/master-bin.000001 $MYSQLTEST_VARDIR/log/master-bin.000002
--disable_query_log --disable_query_log
select "--- stop-datetime --" as ""; select "--- stop-datetime --" as "";
--enable_query_log --enable_query_log
--exec $MYSQL_BINLOG --short-form "--stop-datetime=2020-01-21 15:32:24" $MYSQL_TEST_DIR/var/log/master-bin.000001 $MYSQL_TEST_DIR/var/log/master-bin.000002 --exec $MYSQL_BINLOG --short-form "--stop-datetime=2020-01-21 15:32:24" $MYSQLTEST_VARDIR/log/master-bin.000001 $MYSQLTEST_VARDIR/log/master-bin.000002
--disable_query_log --disable_query_log
select "--- Remote --" as ""; select "--- Remote --" as "";

View file

@ -125,14 +125,14 @@ drop table t1;
create table t1(a int); create table t1(a int);
insert into t1 values (1),(2),(3); insert into t1 values (1),(2),(3);
--exec $MYSQL_DUMP --skip-comments --tab=$MYSQL_TEST_DIR/var/tmp/ test --exec $MYSQL_DUMP --skip-comments --tab=$MYSQLTEST_VARDIR/tmp/ test
--exec cat $MYSQL_TEST_DIR/var/tmp/t1.sql --exec cat $MYSQLTEST_VARDIR/tmp/t1.sql
--exec cat $MYSQL_TEST_DIR/var/tmp/t1.txt --exec cat $MYSQLTEST_VARDIR/tmp/t1.txt
--exec rm $MYSQL_TEST_DIR/var/tmp/t1.sql --exec rm $MYSQLTEST_VARDIR/tmp/t1.sql
--exec rm $MYSQL_TEST_DIR/var/tmp/t1.txt --exec rm $MYSQLTEST_VARDIR/tmp/t1.txt
--exec $MYSQL_DUMP --tab=$MYSQL_TEST_DIR/var/tmp/ test --exec $MYSQL_DUMP --tab=$MYSQLTEST_VARDIR/tmp/ test
--exec rm $MYSQL_TEST_DIR/var/tmp/t1.sql --exec rm $MYSQLTEST_VARDIR/tmp/t1.sql
--exec rm $MYSQL_TEST_DIR/var/tmp/t1.txt --exec rm $MYSQLTEST_VARDIR/tmp/t1.txt
drop table t1; drop table t1;
# #
@ -587,7 +587,7 @@ create view v1 as select * from t2;
create view v2 as select * from t1; create view v2 as select * from t1;
# dump tables and view from db2 # dump tables and view from db2
--exec $MYSQL_DUMP db2 > var/tmp/bug10713.sql --exec $MYSQL_DUMP db2 > $MYSQLTEST_VARDIR/tmp/bug10713.sql
# drop the db, tables and views # drop the db, tables and views
drop table t1, t2; drop table t1, t2;
@ -597,7 +597,7 @@ drop database db2;
# create db1 and reload dump # create db1 and reload dump
create database db1; create database db1;
use db1; use db1;
--exec $MYSQL db1 < var/tmp/bug10713.sql --exec $MYSQL db1 < $MYSQLTEST_VARDIR/tmp/bug10713.sql
# check that all tables and views could be created # check that all tables and views could be created
show tables; show tables;
@ -705,9 +705,9 @@ drop table t1, t2;
create table t1 (a text character set utf8, b text character set latin1); create table t1 (a text character set utf8, b text character set latin1);
insert t1 values (0x4F736E616272C3BC636B, 0x4BF66C6E); insert t1 values (0x4F736E616272C3BC636B, 0x4BF66C6E);
select * from t1; select * from t1;
--exec $MYSQL_DUMP --tab=$MYSQL_TEST_DIR/var/tmp/ test --exec $MYSQL_DUMP --tab=$MYSQLTEST_VARDIR/tmp/ test
--exec $MYSQL test < $MYSQL_TEST_DIR/var/tmp/t1.sql --exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/t1.sql
--exec $MYSQL_IMPORT test $MYSQL_TEST_DIR/var/tmp/t1.txt --exec $MYSQL_IMPORT test $MYSQLTEST_VARDIR/tmp/t1.txt
select * from t1; select * from t1;
drop table t1; drop table t1;
@ -827,9 +827,9 @@ update t1 set a = 4 where a=3;
# Skip dumping triggers # Skip dumping triggers
--exec $MYSQL_DUMP --skip-comments --databases --skip-triggers test --exec $MYSQL_DUMP --skip-comments --databases --skip-triggers test
# Dump and reload... # Dump and reload...
--exec $MYSQL_DUMP --skip-comments --databases test > var/tmp/mysqldump.sql --exec $MYSQL_DUMP --skip-comments --databases test > $MYSQLTEST_VARDIR/tmp/mysqldump.sql
drop table t1; drop table t1;
--exec $MYSQL test < var/tmp/mysqldump.sql --exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/mysqldump.sql
# Check that tables have been reloaded # Check that tables have been reloaded
show tables; show tables;
--replace_column 6 # --replace_column 6 #
@ -840,11 +840,11 @@ DROP TABLE t1, t2;
# Bugs #9136, #12917: problems with --defaults-extra-file option # Bugs #9136, #12917: problems with --defaults-extra-file option
# #
--exec echo "[mysqltest1]" > $MYSQL_TEST_DIR/var/tmp/tmp.cnf --exec echo "[mysqltest1]" > $MYSQLTEST_VARDIR/tmp/tmp.cnf
--exec echo "port=1234" >> $MYSQL_TEST_DIR/var/tmp/tmp.cnf --exec echo "port=1234" >> $MYSQLTEST_VARDIR/tmp/tmp.cnf
--exec $MYSQL_MY_PRINT_DEFAULTS -c $MYSQL_TEST_DIR/var/tmp/tmp.cnf mysqltest1 --exec $MYSQL_MY_PRINT_DEFAULTS -c $MYSQLTEST_VARDIR/tmp/tmp.cnf mysqltest1
--exec $MYSQL_MY_PRINT_DEFAULTS -e $MYSQL_TEST_DIR/var/tmp/tmp.cnf mysqltest1 mysqltest1 --exec $MYSQL_MY_PRINT_DEFAULTS -e $MYSQLTEST_VARDIR/tmp/tmp.cnf mysqltest1 mysqltest1
--exec rm $MYSQL_TEST_DIR/var/tmp/tmp.cnf --exec rm $MYSQLTEST_VARDIR/tmp/tmp.cnf
# #
# Test of fix to BUG 12597 # Test of fix to BUG 12597
@ -869,13 +869,13 @@ INSERT INTO `test1` VALUES (1);
SELECT * FROM `test2`; SELECT * FROM `test2`;
# dump # dump
--exec $MYSQL_DUMP --skip-comments --databases test > var/tmp/mysqldump.sql --exec $MYSQL_DUMP --skip-comments --databases test > $MYSQLTEST_VARDIR/tmp/mysqldump.sql
#DROP TRIGGER testref; #DROP TRIGGER testref;
#DROP TABLE test1; #DROP TABLE test1;
#DROP TABLE test2; #DROP TABLE test2;
# restore # restore
--exec $MYSQL test < var/tmp/mysqldump.sql --exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/mysqldump.sql
SHOW TRIGGERS; SHOW TRIGGERS;
SELECT * FROM `test1`; SELECT * FROM `test1`;
SELECT * FROM `test2`; SELECT * FROM `test2`;

View file

@ -360,20 +360,20 @@ select 3 from t1 ;
# Missing delimiter # Missing delimiter
# The comment will be "sucked into" the sleep command since # The comment will be "sucked into" the sleep command since
# delimiter is missing until after "show status" # delimiter is missing until after "show status"
--system echo "sleep 4" > var/tmp/mysqltest.sql --system echo "sleep 4" > $MYSQLTEST_VARDIR/tmp/mysqltest.sql
--system echo "# A comment" >> var/tmp/mysqltest.sql --system echo "# A comment" >> $MYSQLTEST_VARDIR/tmp/mysqltest.sql
--system echo "show status;" >> var/tmp/mysqltest.sql --system echo "show status;" >> $MYSQLTEST_VARDIR/tmp/mysqltest.sql
--error 1 --error 1
--exec $MYSQL_TEST < var/tmp/mysqltest.sql 2>&1 --exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
# #
# Missing delimiter until eof # Missing delimiter until eof
# The comment will be "sucked into" the sleep command since # The comment will be "sucked into" the sleep command since
# delimiter is missing # delimiter is missing
--system echo "sleep 7" > var/tmp/mysqltest.sql --system echo "sleep 7" > $MYSQLTEST_VARDIR/tmp/mysqltest.sql
--system echo "# Another comment" >> var/tmp/mysqltest.sql --system echo "# Another comment" >> $MYSQLTEST_VARDIR/tmp/mysqltest.sql
--error 1 --error 1
--exec $MYSQL_TEST < var/tmp/mysqltest.sql 2>&1 --exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
# #
# Extra delimiter # Extra delimiter
@ -587,25 +587,26 @@ echo $var3_var3;
--exec echo "source non_existingFile;" | $MYSQL_TEST 2>&1 --exec echo "source non_existingFile;" | $MYSQL_TEST 2>&1
# Too many source # Too many source
--exec echo "source var/tmp/recursive.sql;" > var/tmp/recursive.sql --exec echo "source $MYSQLTEST_VARDIR/tmp/recursive.sql;" > $MYSQLTEST_VARDIR/tmp/recursive.sql
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--error 1 --error 1
--exec echo "source var/tmp/recursive.sql;" | $MYSQL_TEST 2>&1 --exec echo "source $MYSQLTEST_VARDIR/tmp/recursive.sql;" | $MYSQL_TEST 2>&1
# Source a file with error # Source a file with error
--exec echo "garbage ;" > var/tmp/error.sql --exec echo "garbage ;" > $MYSQLTEST_VARDIR/tmp/error.sql
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--error 1 --error 1
--exec echo "source var/tmp/error.sql;" | $MYSQL_TEST 2>&1 --exec echo "source $MYSQLTEST_VARDIR/tmp/error.sql;" | $MYSQL_TEST 2>&1
# Test execution of source in a while loop # Test execution of source in a while loop
--exec echo "echo here is the sourced script;" > var/tmp/sourced.sql
--disable_query_log --disable_query_log
let $outer= 2; # Number of outer loops let $outer= 2; # Number of outer loops
while ($outer) while ($outer)
{ {
eval SELECT '$outer = outer loop variable after while' AS ""; eval SELECT '$outer = outer loop variable after while' AS "";
--source var/tmp/sourced.sql --source include/sourced.inc
eval SELECT '$outer = outer loop variable before dec' AS ""; eval SELECT '$outer = outer loop variable before dec' AS "";
dec $outer; dec $outer;
@ -626,7 +627,6 @@ while ($outer)
# Test execution of source in a while loop # Test execution of source in a while loop
--exec echo "--source var/tmp/sourced.sql" > var/tmp/sourced1.sql
--disable_abort_on_error --disable_abort_on_error
# Sourcing of a file within while loop, sourced file will # Sourcing of a file within while loop, sourced file will
# source other file # source other file
@ -634,7 +634,7 @@ let $num= 9;
while ($num) while ($num)
{ {
SELECT 'In loop' AS ""; SELECT 'In loop' AS "";
--source var/tmp/sourced1.sql --source include/sourced1.inc
dec $num; dec $num;
} }
--enable_abort_on_error --enable_abort_on_error
@ -772,20 +772,20 @@ while ($i)
--error 1 --error 1
--exec echo "{;" | $MYSQL_TEST 2>&1 --exec echo "{;" | $MYSQL_TEST 2>&1
--system echo "while (0)" > var/tmp/mysqltest.sql --system echo "while (0)" > $MYSQLTEST_VARDIR/tmp/mysqltest.sql
--system echo "echo hej;" >> var/tmp/mysqltest.sql --system echo "echo hej;" >> $MYSQLTEST_VARDIR/tmp/mysqltest.sql
--error 1 --error 1
--exec $MYSQL_TEST < var/tmp/mysqltest.sql 2>&1 --exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
--system echo "while (0)" > var/tmp/mysqltest.sql --system echo "while (0)" > $MYSQLTEST_VARDIR/tmp/mysqltest.sql
--system echo "{echo hej;" >> var/tmp/mysqltest.sql --system echo "{echo hej;" >> $MYSQLTEST_VARDIR/tmp/mysqltest.sql
--error 1 --error 1
--exec $MYSQL_TEST < var/tmp/mysqltest.sql 2>&1 --exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
--system echo "while (0){" > var/tmp/mysqltest.sql --system echo "while (0){" > $MYSQLTEST_VARDIR/tmp/mysqltest.sql
--system echo "echo hej;" >> var/tmp/mysqltest.sql --system echo "echo hej;" >> $MYSQLTEST_VARDIR/tmp/mysqltest.sql
--error 1 --error 1
--exec $MYSQL_TEST < var/tmp/mysqltest.sql 2>&1 --exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
# ---------------------------------------------------------------------------- # ----------------------------------------------------------------------------
# Test error messages returned from comments starting with a command # Test error messages returned from comments starting with a command
@ -876,38 +876,41 @@ select "a" as col1, "c" as col2;
--exec echo "connect (con1,localhost,root,,,,,SMTP POP);" | $MYSQL_TEST 2>&1 --exec echo "connect (con1,localhost,root,,,,,SMTP POP);" | $MYSQL_TEST 2>&1
# Repeat connect/disconnect # Repeat connect/disconnect
--exec echo "let \$i=100;" > var/tmp/con.sql --exec echo "let \$i=100;" > $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo "while (\$i)" >> var/tmp/con.sql --exec echo "while (\$i)" >> $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo "{" >> var/tmp/con.sql --exec echo "{" >> $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo " connect (test_con1,localhost,root,,); " >> var/tmp/con.sql --exec echo " connect (test_con1,localhost,root,,); " >> $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo " disconnect test_con1; " >> var/tmp/con.sql --exec echo " disconnect test_con1; " >> $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo " dec \$i; " >> var/tmp/con.sql --exec echo " dec \$i; " >> $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo "}" >> var/tmp/con.sql --exec echo "}" >> $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo "source var/tmp/con.sql; echo OK;" | $MYSQL_TEST 2>&1 --exec echo "source $MYSQLTEST_VARDIR/tmp/con.sql; echo OK;" | $MYSQL_TEST 2>&1
# Repeat connect/disconnect, exceed max number of connections # Repeat connect/disconnect, exceed max number of connections
--exec echo "let \$i=200;" > var/tmp/con.sql --exec echo "let \$i=200;" > $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo "while (\$i)" >> var/tmp/con.sql --exec echo "while (\$i)" >> $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo "{" >> var/tmp/con.sql --exec echo "{" >> $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo " connect (test_con1,localhost,root,,); " >> var/tmp/con.sql --exec echo " connect (test_con1,localhost,root,,); " >> $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo " disconnect test_con1; " >> var/tmp/con.sql --exec echo " disconnect test_con1; " >> $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo " dec \$i; " >> var/tmp/con.sql --exec echo " dec \$i; " >> $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo "}" >> var/tmp/con.sql --exec echo "}" >> $MYSQLTEST_VARDIR/tmp/con.sql
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--error 1 --error 1
--exec echo "source var/tmp/con.sql;" | $MYSQL_TEST 2>&1 --exec echo "source $MYSQLTEST_VARDIR/tmp/con.sql;" | $MYSQL_TEST 2>&1
# Select disconnected connection # Select disconnected connection
--exec echo "connect (test_con1,localhost,root,,);" > var/tmp/con.sql --exec echo "connect (test_con1,localhost,root,,);" > $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo "disconnect test_con1; " >> var/tmp/con.sql --exec echo "disconnect test_con1; " >> $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo "connection test_con1;" >> var/tmp/con.sql --exec echo "connection test_con1;" >> $MYSQLTEST_VARDIR/tmp/con.sql
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--error 1 --error 1
--exec echo "source var/tmp/con.sql;" | $MYSQL_TEST 2>&1 --exec echo "source $MYSQLTEST_VARDIR/tmp/con.sql;" | $MYSQL_TEST 2>&1
# Connection name already used # Connection name already used
--exec echo "connect (test_con1,localhost,root,,);" > var/tmp/con.sql --exec echo "connect (test_con1,localhost,root,,);" > $MYSQLTEST_VARDIR/tmp/con.sql
--exec echo "connect (test_con1,localhost,root,,);" >> var/tmp/con.sql --exec echo "connect (test_con1,localhost,root,,);" >> $MYSQLTEST_VARDIR/tmp/con.sql
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--error 1 --error 1
--exec echo "source var/tmp/con.sql;" | $MYSQL_TEST 2>&1 --exec echo "source $MYSQLTEST_VARDIR/tmp/con.sql;" | $MYSQL_TEST 2>&1
# connect when "disable_abort_on_error" caused "connection not found" # connect when "disable_abort_on_error" caused "connection not found"
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT --replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
@ -999,26 +1002,26 @@ select "this will be executed";
# #
# Test zero length result file. Should not pass # Test zero length result file. Should not pass
# #
--exec touch $MYSQL_TEST_DIR/var/tmp/zero_length_file.result --exec touch $MYSQLTEST_VARDIR/tmp/zero_length_file.result
--exec echo "echo ok;" > $MYSQL_TEST_DIR/var/tmp/query.sql --exec echo "echo ok;" > $MYSQLTEST_VARDIR/tmp/query.sql
--error 1 --error 1
--exec $MYSQL_TEST -x var/tmp/query.sql -R var/tmp/zero_length_file.result 2>&1 --exec $MYSQL_TEST -x $MYSQLTEST_VARDIR/tmp/query.sql -R $MYSQLTEST_VARDIR/tmp/zero_length_file.result 2>&1
# #
# Test that a test file that does not generate any output fails. # Test that a test file that does not generate any output fails.
# #
--exec echo "let \$i= 1;" > $MYSQL_TEST_DIR/var/tmp/query.sql --exec echo "let \$i= 1;" > $MYSQLTEST_VARDIR/tmp/query.sql
--error 1 --error 1
--exec $MYSQL_TEST -x var/tmp/query.sql 2>&1 --exec $MYSQL_TEST -x $MYSQLTEST_VARDIR/tmp/query.sql 2>&1
# #
# Test that mysqltest fails when there are no queries executed # Test that mysqltest fails when there are no queries executed
# but a result file exist # but a result file exist
# NOTE! This will never happen as long as it's not allowed to have # NOTE! This will never happen as long as it's not allowed to have
# test files that does not produce any output # test files that does not produce any output
#--exec echo "something" > $MYSQL_TEST_DIR/var/tmp/result_file.result #--exec echo "something" > $MYSQLTEST_VARDIR/tmp/result_file.result
#--exec echo "let \$i= 1;" > $MYSQL_TEST_DIR/var/tmp/query.sql #--exec echo "let \$i= 1;" > $MYSQLTEST_VARDIR/tmp/query.sql
#--error 1 #--error 1
#--exec $MYSQL_TEST -x var/tmp/query.sql -R var/tmp/result_file.result 2>&1 #--exec $MYSQL_TEST -x $MYSQLTEST_VARDIR/tmp/query.sql -R $MYSQLTEST_VARDIR/tmp/result_file.result 2>&1
# #
# Bug #11731 mysqltest in multi-statement queries ignores errors in # Bug #11731 mysqltest in multi-statement queries ignores errors in
@ -1027,43 +1030,43 @@ select "this will be executed";
echo Failing multi statement query; echo Failing multi statement query;
# PS does not support multi statement # PS does not support multi statement
--exec echo "--disable_ps_protocol" > var/tmp/bug11731.sql --exec echo "--disable_ps_protocol" > $MYSQLTEST_VARDIR/tmp/bug11731.sql
--exec echo "delimiter ||||;" >> var/tmp/bug11731.sql --exec echo "delimiter ||||;" >> $MYSQLTEST_VARDIR/tmp/bug11731.sql
--exec echo "create table t1 (a int primary key);" >> var/tmp/bug11731.sql --exec echo "create table t1 (a int primary key);" >> $MYSQLTEST_VARDIR/tmp/bug11731.sql
--exec echo "insert into t1 values (1);" >> var/tmp/bug11731.sql --exec echo "insert into t1 values (1);" >> $MYSQLTEST_VARDIR/tmp/bug11731.sql
--exec echo "select 'select-me';" >> var/tmp/bug11731.sql --exec echo "select 'select-me';" >> $MYSQLTEST_VARDIR/tmp/bug11731.sql
--exec echo "insertz 'error query'||||" >> var/tmp/bug11731.sql --exec echo "insertz 'error query'||||" >> $MYSQLTEST_VARDIR/tmp/bug11731.sql
--exec echo "delimiter ;||||" >> var/tmp/bug11731.sql --exec echo "delimiter ;||||" >> $MYSQLTEST_VARDIR/tmp/bug11731.sql
--error 1 --error 1
--exec $MYSQL_TEST -x $MYSQL_TEST_DIR/var/tmp/bug11731.sql 2>&1 --exec $MYSQL_TEST -x $MYSQLTEST_VARDIR/tmp/bug11731.sql 2>&1
drop table t1; drop table t1;
--error 1 --error 1
--exec $MYSQL_TEST --record -x $MYSQL_TEST_DIR/var/tmp/bug11731.sql -R $MYSQL_TEST_DIR/var/tmp/bug11731.out 2>&1 --exec $MYSQL_TEST --record -x $MYSQLTEST_VARDIR/tmp/bug11731.sql -R $MYSQLTEST_VARDIR/tmp/bug11731.out 2>&1
# The .out file should be non existent # The .out file should be non existent
--exec test ! -s $MYSQL_TEST_DIR/var/tmp/bug11731.out --exec test ! -s $MYSQLTEST_VARDIR/tmp/bug11731.out
drop table t1; drop table t1;
echo Multi statement using expected error; echo Multi statement using expected error;
# PS does not support multi statement # PS does not support multi statement
--exec echo "--disable_ps_protocol" > var/tmp/bug11731.sql --exec echo "--disable_ps_protocol" > $MYSQLTEST_VARDIR/tmp/bug11731.sql
--exec echo "delimiter ||||;" >> var/tmp/bug11731.sql --exec echo "delimiter ||||;" >> $MYSQLTEST_VARDIR/tmp/bug11731.sql
--exec echo "--error 1064" >> var/tmp/bug11731.sql --exec echo "--error 1064" >> $MYSQLTEST_VARDIR/tmp/bug11731.sql
--exec echo "create table t1 (a int primary key);" >> var/tmp/bug11731.sql --exec echo "create table t1 (a int primary key);" >> $MYSQLTEST_VARDIR/tmp/bug11731.sql
--exec echo "insert into t1 values (1);" >> var/tmp/bug11731.sql --exec echo "insert into t1 values (1);" >> $MYSQLTEST_VARDIR/tmp/bug11731.sql
--exec echo "select 'select-me';" >> var/tmp/bug11731.sql --exec echo "select 'select-me';" >> $MYSQLTEST_VARDIR/tmp/bug11731.sql
--exec echo "insertz "error query"||||" >> var/tmp/bug11731.sql --exec echo "insertz "error query"||||" >> $MYSQLTEST_VARDIR/tmp/bug11731.sql
--exec echo "delimiter ;||||" >> var/tmp/bug11731.sql --exec echo "delimiter ;||||" >> $MYSQLTEST_VARDIR/tmp/bug11731.sql
# These two should work since the error is expected # These two should work since the error is expected
--exec $MYSQL_TEST -x $MYSQL_TEST_DIR/var/tmp/bug11731.sql 2>&1 --exec $MYSQL_TEST -x $MYSQLTEST_VARDIR/tmp/bug11731.sql 2>&1
drop table t1; drop table t1;
--exec $MYSQL_TEST --record -x $MYSQL_TEST_DIR/var/tmp/bug11731.sql -R $MYSQL_TEST_DIR/var/tmp/bug11731.out 2>&1 --exec $MYSQL_TEST --record -x $MYSQLTEST_VARDIR/tmp/bug11731.sql -R $MYSQLTEST_VARDIR/tmp/bug11731.out 2>&1
# The .out file should exist # The .out file should exist
--exec test -s $MYSQL_TEST_DIR/var/tmp/bug11731.out --exec test -s $MYSQLTEST_VARDIR/tmp/bug11731.out
drop table t1; drop table t1;

View file

@ -24,7 +24,7 @@ create table t1(
insert into t1 values(1, "Autodiscover"); insert into t1 values(1, "Autodiscover");
flush tables; flush tables;
system rm var/master-data/test/t1.frm ; system rm $MYSQLTEST_VARDIR/master-data/test/t1.frm ;
select * from t1; select * from t1;
show status like 'handler_discover%'; show status like 'handler_discover%';
@ -33,13 +33,13 @@ show status like 'handler_discover%';
# #
flush tables; flush tables;
system rm var/master-data/test/t1.frm ; system rm $MYSQLTEST_VARDIR/master-data/test/t1.frm ;
insert into t1 values (2, "Auto 2"); insert into t1 values (2, "Auto 2");
show status like 'handler_discover%'; show status like 'handler_discover%';
insert into t1 values (3, "Discover 3"); insert into t1 values (3, "Discover 3");
show status like 'handler_discover%'; show status like 'handler_discover%';
flush tables; flush tables;
system rm var/master-data/test/t1.frm ; system rm $MYSQLTEST_VARDIR/master-data/test/t1.frm ;
select * from t1 order by id; select * from t1 order by id;
show status like 'handler_discover%'; show status like 'handler_discover%';
@ -48,7 +48,7 @@ show status like 'handler_discover%';
# #
flush tables; flush tables;
system rm var/master-data/test/t1.frm ; system rm $MYSQLTEST_VARDIR/master-data/test/t1.frm ;
update t1 set name="Autodiscover" where id = 2; update t1 set name="Autodiscover" where id = 2;
show status like 'handler_discover%'; show status like 'handler_discover%';
select * from t1 order by id; select * from t1 order by id;
@ -59,7 +59,7 @@ show status like 'handler_discover%';
# #
flush tables; flush tables;
system rm var/master-data/test/t1.frm ; system rm $MYSQLTEST_VARDIR/master-data/test/t1.frm ;
delete from t1 where id = 3; delete from t1 where id = 3;
select * from t1 order by id; select * from t1 order by id;
show status like 'handler_discover%'; show status like 'handler_discover%';
@ -85,7 +85,7 @@ show status like 'handler_discover%';
flush tables; flush tables;
# Modify the frm file on disk # Modify the frm file on disk
system echo "blaj" >> var/master-data/test/t2.frm ; system echo "blaj" >> $MYSQLTEST_VARDIR/master-data/test/t2.frm ;
select * from t2; select * from t2;
show status like 'handler_discover%'; show status like 'handler_discover%';
@ -111,7 +111,7 @@ show status like 'handler_discover%';
flush tables; flush tables;
# Remove the frm file from disk # Remove the frm file from disk
system rm var/master-data/test/t3.frm ; system rm $MYSQLTEST_VARDIR/master-data/test/t3.frm ;
--error 1050 --error 1050
create table t3( create table t3(
@ -168,14 +168,14 @@ show status like 'handler_discover%';
# Remove the frm file from disk # Remove the frm file from disk
flush tables; flush tables;
system rm var/master-data/test/t7.frm ; system rm $MYSQLTEST_VARDIR/master-data/test/t7.frm ;
show tables from test; show tables from test;
show status like 'handler_discover%'; show status like 'handler_discover%';
# Remove the frm file from disk again # Remove the frm file from disk again
flush tables; flush tables;
system rm var/master-data/test/t7.frm ; system rm $MYSQLTEST_VARDIR/master-data/test/t7.frm ;
--replace_column 6 # 7 # 8 # 9 # 12 # 13 # 15 # 18 # --replace_column 6 # 7 # 8 # 9 # 12 # 13 # 15 # 18 #
show table status; show table status;
@ -290,8 +290,8 @@ insert into t9 values (9);
system exec $NDB_TOOLS_DIR/ndb_drop_table --no-defaults -d test t3 >> $NDB_TOOLS_OUTPUT ; system exec $NDB_TOOLS_DIR/ndb_drop_table --no-defaults -d test t3 >> $NDB_TOOLS_OUTPUT ;
system exec $NDB_TOOLS_DIR/ndb_drop_table --no-defaults -d test t5 >> $NDB_TOOLS_OUTPUT ; system exec $NDB_TOOLS_DIR/ndb_drop_table --no-defaults -d test t5 >> $NDB_TOOLS_OUTPUT ;
# Remove t6, t7 from disk # Remove t6, t7 from disk
system rm var/master-data/test/t6.frm > /dev/null ; system rm $MYSQLTEST_VARDIR/master-data/test/t6.frm > /dev/null ;
system rm var/master-data/test/t7.frm > /dev/null ; system rm $MYSQLTEST_VARDIR/master-data/test/t7.frm > /dev/null ;
SHOW TABLES; SHOW TABLES;
@ -332,8 +332,8 @@ insert into t9 values (9);
system exec $NDB_TOOLS_DIR/ndb_drop_table --no-defaults -d test t3 > /dev/null ; system exec $NDB_TOOLS_DIR/ndb_drop_table --no-defaults -d test t3 > /dev/null ;
system exec $NDB_TOOLS_DIR/ndb_drop_table --no-defaults -d test t5 > /dev/null ; system exec $NDB_TOOLS_DIR/ndb_drop_table --no-defaults -d test t5 > /dev/null ;
# Remove t6, t7 from disk # Remove t6, t7 from disk
system rm var/master-data/test/t6.frm > /dev/null ; system rm $MYSQLTEST_VARDIR/master-data/test/t6.frm > /dev/null ;
system rm var/master-data/test/t7.frm > /dev/null ; system rm $MYSQLTEST_VARDIR/master-data/test/t7.frm > /dev/null ;
SHOW TABLES LIKE 't6'; SHOW TABLES LIKE 't6';
@ -375,9 +375,9 @@ insert into t3 values (3, "ndb table 3");
insert into t4 values (4); insert into t4 values (4);
# Remove t1, t2, t3 from disk # Remove t1, t2, t3 from disk
system rm var/master-data/test/t1.frm > /dev/null ; system rm $MYSQLTEST_VARDIR/master-data/test/t1.frm > /dev/null ;
system rm var/master-data/test/t2.frm > /dev/null ; system rm $MYSQLTEST_VARDIR/master-data/test/t2.frm > /dev/null ;
system rm var/master-data/test/t3.frm > /dev/null ; system rm $MYSQLTEST_VARDIR/master-data/test/t3.frm > /dev/null ;
flush tables; flush tables;
# Select from the table which only exists in NDB. # Select from the table which only exists in NDB.
@ -530,7 +530,7 @@ CREATE TABLE t9 (
insert t9 values(1, 2), (2,3), (3, 4), (4, 5); insert t9 values(1, 2), (2,3), (3, 4), (4, 5);
#Don't drop the table, instead remove the frm file #Don't drop the table, instead remove the frm file
system rm var/master-data/test/t9.frm ; system rm $MYSQLTEST_VARDIR/master-data/test/t9.frm ;
# Now leave test case, when ndb_autodiscover2 will run, this # Now leave test case, when ndb_autodiscover2 will run, this
# MySQL Server will have been restarted because it has a # MySQL Server will have been restarted because it has a

View file

@ -33,10 +33,12 @@ create table t1 (a int primary key) engine=ndb;
--connection server2 --connection server2
create table t2 (a int primary key) engine=ndb; create table t2 (a int primary key) engine=ndb;
--replace_result $binlog_start <binlog_start>
--replace_column 2 # 4 # 5 # --replace_column 2 # 4 # 5 #
--eval show binlog events from $binlog_start --eval show binlog events from $binlog_start
--connection server1 --connection server1
--replace_result $binlog_start <binlog_start>
--replace_column 2 # 4 # 5 # --replace_column 2 # 4 # 5 #
--eval show binlog events from $binlog_start --eval show binlog events from $binlog_start
@ -51,6 +53,7 @@ reset master;
alter table t2 add column (b int); alter table t2 add column (b int);
--connections server1 --connections server1
--replace_result $binlog_start <binlog_start>
--replace_column 2 # 4 # 5 # --replace_column 2 # 4 # 5 #
--eval show binlog events from $binlog_start --eval show binlog events from $binlog_start
@ -70,6 +73,7 @@ ALTER DATABASE mysqltest CHARACTER SET latin1;
drop table mysqltest.t1; drop table mysqltest.t1;
--connection server1 --connection server1
--replace_result $binlog_start <binlog_start>
--replace_column 2 # 4 # 5 # --replace_column 2 # 4 # 5 #
--eval show binlog events from $binlog_start --eval show binlog events from $binlog_start
@ -87,6 +91,7 @@ drop database mysqltest;
create table t1 (a int primary key) engine=ndb; create table t1 (a int primary key) engine=ndb;
--connection server2 --connection server2
--replace_result $binlog_start <binlog_start>
--replace_column 2 # 4 # 5 # --replace_column 2 # 4 # 5 #
--eval show binlog events from $binlog_start --eval show binlog events from $binlog_start
@ -139,5 +144,6 @@ ENGINE =NDB;
drop table t1; drop table t1;
--connection server2 --connection server2
--replace_result $binlog_start <binlog_start>
--replace_column 2 # 4 # 5 # --replace_column 2 # 4 # 5 #
--eval show binlog events from $binlog_start --eval show binlog events from $binlog_start

View file

@ -0,0 +1 @@
--binlog-ignore-db=mysqltest

View file

@ -0,0 +1,19 @@
-- source include/have_ndb.inc
-- source include/have_binlog_format_row.inc
--let $binlog_start=102
--disable_warnings
drop table if exists t1;
drop database if exists mysqltest;
--enable_warnings
create database mysqltest;
use mysqltest;
create table t1 (a int primary key, b int) engine=ndb;
insert into t1 values (1, 1);
--replace_result $binlog_start <binlog_start>
--replace_column 2 # 4 # 5 #
--eval show binlog events from $binlog_start
drop database mysqltest;

View file

@ -1,6 +1,7 @@
disable_query_log; disable_query_log;
-- source include/test_outfile.inc -- source include/test_outfile.inc
eval set @tmpdir="$MYSQL_TEST_DIR/var/tmp"; # Server are started in "var/master-data", so "../tmp" will be "var/tmp"
eval set @tmpdir="../tmp";
enable_query_log; enable_query_log;
-- source include/have_outfile.inc -- source include/have_outfile.inc
@ -15,42 +16,43 @@ drop table if exists t1;
create table t1 (`a` blob); create table t1 (`a` blob);
insert into t1 values("hello world"),("Hello mars"),(NULL); insert into t1 values("hello world"),("Hello mars"),(NULL);
disable_query_log; disable_query_log;
eval select * into outfile "$MYSQL_TEST_DIR/var/tmp/outfile-test.1" from t1; eval select * into outfile "../tmp/outfile-test.1" from t1;
enable_query_log; enable_query_log;
select load_file(concat(@tmpdir,"/outfile-test.1")); select load_file(concat(@tmpdir,"/outfile-test.1"));
disable_query_log; disable_query_log;
eval select * into dumpfile "$MYSQL_TEST_DIR/var/tmp/outfile-test.2" from t1 limit 1; eval select * into dumpfile "../tmp/outfile-test.2" from t1 limit 1;
enable_query_log; enable_query_log;
select load_file(concat(@tmpdir,"/outfile-test.2")); select load_file(concat(@tmpdir,"/outfile-test.2"));
disable_query_log; disable_query_log;
eval select * into dumpfile "$MYSQL_TEST_DIR/var/tmp/outfile-test.3" from t1 where a is null; eval select * into dumpfile "../tmp/outfile-test.3" from t1 where a is null;
enable_query_log; enable_query_log;
select load_file(concat(@tmpdir,"/outfile-test.3")); select load_file(concat(@tmpdir,"/outfile-test.3"));
# the following should give errors # the following should give errors
#disabled as error message has variable path disable_query_log;
#disable_query_log; --error 1086
#--error 1086 eval select * into outfile "../tmp/outfile-test.1" from t1;
#eval select * into outfile "$MYSQL_TEST_DIR/var/tmp/outfile-test.1" from t1;
#--error 1086 --error 1086
#eval select * into dumpfile "$MYSQL_TEST_DIR/var/tmp/outfile-test.2" from t1; eval select * into dumpfile "../tmp/outfile-test.2" from t1;
#--error 1086
#eval select * into dumpfile "$MYSQL_TEST_DIR/var/tmp/outfile-test.3" from t1; --error 1086
#enable_query_log; eval select * into dumpfile "../tmp/outfile-test.3" from t1;
enable_query_log;
--error 13,2 --error 13,2
select load_file(concat(@tmpdir,"/outfile-test.not-exist")); select load_file(concat(@tmpdir,"/outfile-test.not-exist"));
--exec rm $MYSQL_TEST_DIR/var/tmp/outfile-test.1 --exec rm $MYSQLTEST_VARDIR/tmp/outfile-test.1
--exec rm $MYSQL_TEST_DIR/var/tmp/outfile-test.2 --exec rm $MYSQLTEST_VARDIR/tmp/outfile-test.2
--exec rm $MYSQL_TEST_DIR/var/tmp/outfile-test.3 --exec rm $MYSQLTEST_VARDIR/tmp/outfile-test.3
drop table t1; drop table t1;
# Bug#8191 # Bug#8191
disable_query_log; disable_query_log;
eval select 1 into outfile "$MYSQL_TEST_DIR/var/tmp/outfile-test.4"; eval select 1 into outfile "../tmp/outfile-test.4";
enable_query_log; enable_query_log;
select load_file(concat(@tmpdir,"/outfile-test.4")); select load_file(concat(@tmpdir,"/outfile-test.4"));
--exec rm $MYSQL_TEST_DIR/var/tmp/outfile-test.4 --exec rm $MYSQLTEST_VARDIR/tmp/outfile-test.4
# #
# Bug #5382: 'explain select into outfile' crashes the server # Bug #5382: 'explain select into outfile' crashes the server
@ -70,16 +72,16 @@ DROP TABLE t1;
# Bug#13202 SELECT * INTO OUTFILE ... FROM information_schema.schemata now fails # Bug#13202 SELECT * INTO OUTFILE ... FROM information_schema.schemata now fails
# #
disable_query_log; disable_query_log;
eval SELECT * INTO OUTFILE "$MYSQL_TEST_DIR/var/tmp/outfile-test.4" eval SELECT * INTO OUTFILE "../tmp/outfile-test.4"
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
FROM information_schema.schemata LIMIT 0, 5; FROM information_schema.schemata LIMIT 0, 5;
# enable_query_log; # enable_query_log;
--exec rm $MYSQL_TEST_DIR/var/tmp/outfile-test.4 --exec rm $MYSQLTEST_VARDIR/tmp/outfile-test.4
use information_schema; use information_schema;
# disable_query_log; # disable_query_log;
eval SELECT * INTO OUTFILE "$MYSQL_TEST_DIR/var/tmp/outfile-test.4" eval SELECT * INTO OUTFILE "../tmp/outfile-test.4"
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
FROM schemata LIMIT 0, 5; FROM schemata LIMIT 0, 5;
enable_query_log; enable_query_log;
--exec rm $MYSQL_TEST_DIR/var/tmp/outfile-test.4 --exec rm $MYSQLTEST_VARDIR/tmp/outfile-test.4

View file

@ -834,7 +834,7 @@ execute stmt1 ;
--disable_metadata --disable_metadata
--horizontal_results --horizontal_results
drop table t5, t9; drop table t1, t5, t9;
##### RULES OF THUMB TO PRESERVE THE SYSTEMATICS OF THE PS TEST CASES ##### ##### RULES OF THUMB TO PRESERVE THE SYSTEMATICS OF THE PS TEST CASES #####
# #

View file

@ -787,6 +787,7 @@ begin
end// end//
call p1()// call p1()//
drop procedure p1// drop procedure p1//
drop function f1//
drop table t1// drop table t1//
delimiter ;// delimiter ;//

View file

@ -104,3 +104,5 @@ insert into t1 values(1);
connection default; connection default;
drop table t1,t2; drop table t1,t2;
drop user test@localhost; drop user test@localhost;
set global read_only=0;

View file

@ -29,7 +29,7 @@ repair table t1 use_frm;
create table t1 engine=myisam SELECT 1,"table 1"; create table t1 engine=myisam SELECT 1,"table 1";
flush tables; flush tables;
system echo 1 > $MYSQL_TEST_DIR/var/master-data/test/t1.MYI ; system echo 1 > $MYSQLTEST_VARDIR/master-data/test/t1.MYI ;
repair table t1; repair table t1;
repair table t1 use_frm; repair table t1 use_frm;
drop table t1; drop table t1;

View file

@ -2,9 +2,9 @@ source include/master-slave.inc;
set SQL_LOG_BIN=0; set SQL_LOG_BIN=0;
create table t1 (word char(20) not null, index(word)); create table t1 (word char(20) not null, index(word));
load data infile '../../std_data/words.dat' into table t1; load data infile '../std_data_ln/words.dat' into table t1;
create table t2 (word char(20) not null); create table t2 (word char(20) not null);
load data infile '../../std_data/words.dat' into table t2; load data infile '../std_data_ln/words.dat' into table t2;
create table t3 (word char(20) not null primary key); create table t3 (word char(20) not null primary key);
connection slave; connection slave;
load table t1 from master; load table t1 from master;

View file

@ -138,10 +138,10 @@ select * from mysqltest.t1;
# DISABLED FOR NOW AS chmod IS NOT PORTABLE ON NON-UNIX # DISABLED FOR NOW AS chmod IS NOT PORTABLE ON NON-UNIX
# insert into mysqltest.t1 values(10, 'should be there'); # insert into mysqltest.t1 values(10, 'should be there');
# flush tables; # flush tables;
# system chmod 500 var/slave-data/mysqltest/; # system chmod 500 $MYSQLTEST_VARDIR/slave-data/mysqltest/;
# --error 6 # --error 6
# load data from master; # should fail (errno 13) # load data from master; # should fail (errno 13)
# system chmod 700 var/slave-data/mysqltest/; # system chmod 700 $MYSQLTEST_VARDIR/slave-data/mysqltest/;
# select * from mysqltest.t1; # should contain the row (10, ...) # select * from mysqltest.t1; # should contain the row (10, ...)

View file

@ -1,6 +1,6 @@
rm -f $MYSQL_TEST_DIR/var/log/*relay* rm -f $MYSQLTEST_VARDIR/log/*relay*
rm -f $MYSQL_TEST_DIR/var/slave-data/relay-log.info rm -f $MYSQLTEST_VARDIR/slave-data/relay-log.info
cat > $MYSQL_TEST_DIR/var/slave-data/master.info <<EOF cat > $MYSQLTEST_VARDIR/slave-data/master.info <<EOF
master-bin.000001 master-bin.000001
4 4
127.0.0.1 127.0.0.1

View file

@ -16,6 +16,7 @@ sync_slave_with_master;
select * from t1; select * from t1;
connection master; connection master;
drop table t1; drop table t1;
delete from mysql.user where user="replicate";
sync_slave_with_master; sync_slave_with_master;
# End of 4.1 tests # End of 4.1 tests

View file

@ -1 +1 @@
rm -f $MYSQL_TEST_DIR/var/slave-data/master.info rm -f $MYSQLTEST_VARDIR/slave-data/master.info

View file

@ -54,5 +54,5 @@ sync_slave_with_master;
#cleanup #cleanup
connection slave; connection slave;
stop slave; stop slave;
#system rm -rf var/master-data/mysqltest1; #system rm -rf $MYSQLTEST_VARDIR/master-data/mysqltest1;

View file

@ -1 +1 @@
-O max_binlog_size=1M --relay-log=$MYSQL_TEST_DIR/var/master-data/relay-log -O max_binlog_size=1M --relay-log=$MYSQLTEST_VARDIR/master-data/relay-log

View file

@ -1,5 +1,5 @@
rm -f $MYSQL_TEST_DIR/var/slave-data/*-bin.* rm -f $MYSQLTEST_VARDIR/slave-data/*-bin.*
rm -f $MYSQL_TEST_DIR/var/slave-data/master.info rm -f $MYSQLTEST_VARDIR/slave-data/master.info
rm -f $MYSQL_TEST_DIR/var/slave-data/*.index rm -f $MYSQLTEST_VARDIR/slave-data/*.index

View file

@ -1 +1 @@
-O max_binlog_size=1M --relay-log=$MYSQL_TEST_DIR/var/slave-data/relay-log -O max_binlog_size=1M --relay-log=$MYSQLTEST_VARDIR/slave-data/relay-log

View file

@ -1,4 +1,4 @@
rm -f $MYSQL_TEST_DIR/var/master-data/master.info rm -f $MYSQLTEST_VARDIR/master-data/master.info
rm -f $MYSQL_TEST_DIR/var/master-data/*-bin.* rm -f $MYSQLTEST_VARDIR/master-data/*-bin.*
rm -f $MYSQL_TEST_DIR/var/master-data/*.index rm -f $MYSQLTEST_VARDIR/master-data/*.index

View file

@ -41,3 +41,7 @@ connection slave;
--disable_abort_on_error --disable_abort_on_error
revoke select on *.* FROM 'user_foo'; revoke select on *.* FROM 'user_foo';
--enable_abort_on_error --enable_abort_on_error
connection master;
delete from mysql.user where user="user_foo";
sync_slave_with_master;

Some files were not shown because too many files have changed in this diff Show more