mirror of
https://github.com/MariaDB/server.git
synced 2025-10-25 18:38:00 +03:00
Merge bk-internal:/home/bk/mysql-4.1-maint
into shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
This commit is contained in:
@@ -1,2 +1,2 @@
|
||||
--skip-external-locking
|
||||
--force-restart
|
||||
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
# This test is to check various cases of connections
|
||||
# with right and wrong password, with and without database
|
||||
# Unfortunately the check is incomplete as we can't handle errors on connect
|
||||
# Also we can't connect without database
|
||||
# with right and wrong password, with and without database
|
||||
# Unfortunately the check is incomplete as we can't connect without database
|
||||
|
||||
# This test makes no sense with the embedded server
|
||||
--source include/not_embedded.inc
|
||||
@@ -10,69 +9,73 @@
|
||||
drop table if exists t1,t2;
|
||||
--enable_warnings
|
||||
|
||||
|
||||
#connect (con1,localhost,root,,"");
|
||||
#show tables;
|
||||
connect (con1,localhost,root,,mysql);
|
||||
show tables;
|
||||
connect (con1,localhost,root,,test);
|
||||
connect (con2,localhost,root,,test);
|
||||
show tables;
|
||||
|
||||
# Re enable this one day if error handling on connect will take place
|
||||
|
||||
#connect (con1,localhost,root,z,test2);
|
||||
#--error 1045
|
||||
#connect (con1,localhost,root,z,);
|
||||
#--error 1045
|
||||
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
|
||||
--error 1045
|
||||
connect (fail_con,localhost,root,z,test2);
|
||||
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
|
||||
--error 1045
|
||||
connect (fail_con,localhost,root,z,);
|
||||
|
||||
grant ALL on *.* to test@localhost identified by "gambling";
|
||||
grant ALL on *.* to test@127.0.0.1 identified by "gambling";
|
||||
|
||||
# Now check this user with different databases
|
||||
|
||||
#connect (con1,localhost,test,gambling,"");
|
||||
#show tables;
|
||||
connect (con1,localhost,test,gambling,mysql);
|
||||
connect (con3,localhost,test,gambling,mysql);
|
||||
show tables;
|
||||
connect (con1,localhost,test,gambling,test);
|
||||
connect (con4,localhost,test,gambling,test);
|
||||
show tables;
|
||||
|
||||
# Re enable this one day if error handling on connect will take place
|
||||
|
||||
#connect (con1,localhost,test,,test2);
|
||||
#--error 1045
|
||||
#connect (con1,localhost,test,,"");
|
||||
#--error 1045
|
||||
#connect (con1,localhost,test,zorro,test2);
|
||||
#--error 1045
|
||||
#connect (con1,localhost,test,zorro,);
|
||||
#--error 1045
|
||||
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
|
||||
--error 1045
|
||||
connect (fail_con,localhost,test,,test2);
|
||||
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
|
||||
--error 1045
|
||||
connect (fail_con,localhost,test,,"");
|
||||
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
|
||||
--error 1045
|
||||
connect (fail_con,localhost,test,zorro,test2);
|
||||
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
|
||||
--error 1045
|
||||
connect (fail_con,localhost,test,zorro,);
|
||||
|
||||
|
||||
# check if old password version also works
|
||||
update mysql.user set password=old_password("gambling2") where user=_binary"test";
|
||||
flush privileges;
|
||||
|
||||
#connect (con1,localhost,test,gambling2,"");
|
||||
#show tables;
|
||||
connect (con1,localhost,test,gambling2,mysql);
|
||||
connect (con10,localhost,test,gambling2,);
|
||||
connect (con5,localhost,test,gambling2,mysql);
|
||||
connection con5;
|
||||
set password="";
|
||||
--error 1105
|
||||
set password='gambling3';
|
||||
set password=old_password('gambling3');
|
||||
show tables;
|
||||
connect (con1,localhost,test,gambling3,test);
|
||||
connect (con6,localhost,test,gambling3,test);
|
||||
show tables;
|
||||
|
||||
# Re enable this one day if error handling on connect will take place
|
||||
|
||||
#connect (con1,localhost,test,,test2);
|
||||
#--error 1045
|
||||
#connect (con1,localhost,test,,);
|
||||
#--error 1045
|
||||
#connect (con1,localhost,test,zorro,test2);
|
||||
#--error 1045
|
||||
#connect (con1,localhost,test,zorro,);
|
||||
#--error 1045
|
||||
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
|
||||
--error 1045
|
||||
connect (fail_con,localhost,test,,test2);
|
||||
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
|
||||
--error 1045
|
||||
connect (fail_con,localhost,test,,);
|
||||
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
|
||||
--error 1045
|
||||
connect (fail_con,localhost,test,zorro,test2);
|
||||
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
|
||||
--error 1045
|
||||
connect (fail_con,localhost,test,zorro,);
|
||||
|
||||
|
||||
# remove user 'test' so that other tests which may use 'test'
|
||||
@@ -84,13 +87,13 @@ flush privileges;
|
||||
#
|
||||
# Bug#12517: Clear user variables and replication events before
|
||||
# closing temp tables in thread cleanup.
|
||||
connect (con2,localhost,root,,test);
|
||||
connection con2;
|
||||
connect (con7,localhost,root,,test);
|
||||
connection con7;
|
||||
create table t1 (id integer not null auto_increment primary key);
|
||||
create temporary table t2(id integer not null auto_increment primary key);
|
||||
set @id := 1;
|
||||
delete from t1 where id like @id;
|
||||
disconnect con2;
|
||||
disconnect con7;
|
||||
--sleep 5
|
||||
connection default;
|
||||
drop table t1;
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#
|
||||
# See mysql-test/std_data/init_file.dat and
|
||||
# mysql-test/t/init_file-master.opt for the actual test
|
||||
#
|
||||
#
|
||||
|
||||
# End of 4.1 tests
|
||||
--echo ok
|
||||
--echo End of 4.1 tests
|
||||
|
||||
@@ -8,8 +8,8 @@
|
||||
# server or run mysql-test-run --debug mysql_client_test and check
|
||||
# var/log/mysql_client_test.trace
|
||||
|
||||
--disable_result_log
|
||||
--exec echo $MYSQL_CLIENT_TEST --getopt-ll-test=25600M
|
||||
--exec $MYSQL_CLIENT_TEST --getopt-ll-test=25600M
|
||||
--exec echo "$MYSQL_CLIENT_TEST --getopt-ll-test=25600M" > $MYSQLTEST_VARDIR/log/mysql_client_test.log 2>&1
|
||||
--exec $MYSQL_CLIENT_TEST --getopt-ll-test=25600M >> $MYSQLTEST_VARDIR/log/mysql_client_test.log 2>&1
|
||||
|
||||
# End of 4.1 tests
|
||||
echo ok;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1 +1 @@
|
||||
--loose-to-force-a-restart
|
||||
--force-restart
|
||||
|
||||
@@ -351,14 +351,14 @@ create table t1 (a int, b int);
|
||||
insert into t1 (a, b) values (1,1), (1,2), (2,1), (2,2);
|
||||
prepare stmt from
|
||||
"explain select * from t1 where t1.a=2 and t1.a=t1.b and t1.b > 1 + ?";
|
||||
--replace_column 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 -
|
||||
set @v=5;
|
||||
execute stmt using @v;
|
||||
--replace_column 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 -
|
||||
execute stmt using @v;
|
||||
set @v=0;
|
||||
execute stmt using @v;
|
||||
--replace_column 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 -
|
||||
execute stmt using @v;
|
||||
set @v=5;
|
||||
--replace_column 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 -
|
||||
execute stmt using @v;
|
||||
drop table t1;
|
||||
deallocate prepare stmt;
|
||||
|
||||
@@ -305,8 +305,8 @@ prepare stmt4 from ' show table status from test like ''t9%'' ';
|
||||
--replace_result 2147483647 4294967295
|
||||
# Bug#4288
|
||||
execute stmt4;
|
||||
--replace_column 2 #
|
||||
prepare stmt4 from ' show status like ''Threads_running'' ';
|
||||
--replace_column 2 #
|
||||
execute stmt4;
|
||||
prepare stmt4 from ' show variables like ''sql_mode'' ';
|
||||
execute stmt4;
|
||||
|
||||
@@ -35,7 +35,7 @@ use mysqltest;
|
||||
--source include/ps_create.inc
|
||||
--source include/ps_renew.inc
|
||||
--enable_query_log
|
||||
eval use $DB;
|
||||
use test;
|
||||
grant usage on mysqltest.* to second_user@localhost
|
||||
identified by 'looser' ;
|
||||
grant select on mysqltest.t9 to second_user@localhost
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
#
|
||||
# Running test with abort-slave-event-count=1
|
||||
# This will force slave to reconnect after every event
|
||||
#
|
||||
|
||||
require_manager;
|
||||
connect (master,localhost,root,,test,0,master.sock);
|
||||
connect (slave,localhost,root,,test,0,slave.sock);
|
||||
connection master;
|
||||
reset master;
|
||||
server_stop master;
|
||||
server_start master;
|
||||
connection slave;
|
||||
reset slave;
|
||||
start slave;
|
||||
connection master;
|
||||
show binary logs;
|
||||
--disable_warnings
|
||||
drop table if exists t1;
|
||||
--enable_warnings
|
||||
create table t1(n int);
|
||||
insert into t1 values (3351);
|
||||
sync_slave_with_master;
|
||||
select * from t1;
|
||||
connection master;
|
||||
drop table t1;
|
||||
sync_slave_with_master;
|
||||
|
||||
# End of 4.1 tests
|
||||
@@ -1,101 +0,0 @@
|
||||
# This test makes some assumptions about values of thread ids, which should be
|
||||
# true if the servers have been restarted for this test. So we want to
|
||||
# stop/restart servers. Note that if assumptions are wrong, the test will not
|
||||
# fail; it will just fail to test the error-prone scenario.
|
||||
# Using the manager is the only way to have more than one slave server.
|
||||
# So you must run this test with --manager.
|
||||
|
||||
require_manager;
|
||||
server_stop master;
|
||||
server_start master;
|
||||
server_stop slave;
|
||||
server_start slave;
|
||||
# no need for slave_sec (no assumptions on thread ids for this server).
|
||||
|
||||
source include/master-slave.inc;
|
||||
connect (slave_sec,localhost,root,,test,0,slave.sock-1);
|
||||
connection master;
|
||||
save_master_pos;
|
||||
connection slave;
|
||||
sync_with_master;
|
||||
reset master;
|
||||
save_master_pos;
|
||||
connection slave_sec;
|
||||
eval change master to master_host='127.0.0.1',master_port=$SLAVE_MYPORT, master_user='root';
|
||||
start slave;
|
||||
sync_with_master;
|
||||
|
||||
# :P now we have a chain ready-to-test.
|
||||
|
||||
connection master;
|
||||
create temporary table t1 (a int);
|
||||
save_master_pos;
|
||||
connection slave;
|
||||
sync_with_master;
|
||||
connection master1;
|
||||
create temporary table t1 (a int);
|
||||
save_master_pos;
|
||||
connection slave;
|
||||
sync_with_master;
|
||||
save_master_pos;
|
||||
|
||||
# First test:
|
||||
|
||||
connection slave_sec;
|
||||
# Before BUG#1686 ("If 2 master threads with same-name temp table, slave makes
|
||||
# bad binlog") was fixed, sync_with_master failed
|
||||
sync_with_master;
|
||||
show status like 'slave_open_temp_tables';
|
||||
|
||||
# 'master' and 'master1' usually have thread id 2-3 or 3-4.
|
||||
# 'slave' and 'slave1' usually have thread id 2-3.
|
||||
connection slave;
|
||||
create temporary table t1 (a int);
|
||||
connection slave1;
|
||||
create temporary table t1 (a int);
|
||||
# So it's likely that in the binlog of slave we get
|
||||
# server_id=of_master thread_id=3 create temp...
|
||||
# server_id=of_slave thread_id=3 create temp...
|
||||
# which would confuse slave-sec unless slave-sec uses server id to distinguish
|
||||
# between temp tables (here thread id is obviously not enough to distinguish).
|
||||
|
||||
save_master_pos;
|
||||
|
||||
# Second test:
|
||||
|
||||
connection slave_sec;
|
||||
# If we did not use the server id to distinguish between temp tables,
|
||||
# sync_with_master would fail
|
||||
sync_with_master;
|
||||
show status like 'slave_open_temp_tables';
|
||||
|
||||
# Third test (BUG#1240 "slave of slave breaks when STOP SLAVE was issud on
|
||||
# parent slave and temp tables").
|
||||
stop slave;
|
||||
connection slave;
|
||||
insert into t1 values(1);
|
||||
create table t2 as select * from t1;
|
||||
save_master_pos;
|
||||
connection slave_sec;
|
||||
start slave;
|
||||
sync_with_master;
|
||||
show status like 'slave_open_temp_tables';
|
||||
select * from t2;
|
||||
|
||||
# clean up
|
||||
connection slave;
|
||||
drop table t2;
|
||||
save_master_pos;
|
||||
connection slave_sec;
|
||||
sync_with_master;
|
||||
|
||||
# On purpose, we don't delete the temporary tables explicitely.
|
||||
# So temp tables remain on slave (remember they are not deleted when the slave
|
||||
# SQL thread terminates). If you run this test with
|
||||
# --valgrind --valgrind-options=--show-reachable=yes
|
||||
# you will see if they get cleaned up at slave's shutdown (that is, if the
|
||||
# memory they use is freed (it should) by mysqld before it terminates).
|
||||
# If they wouldn't be cleaned up, you would see some "still reachable" blocks in
|
||||
# Valgrind.
|
||||
|
||||
# End of 4.1 tests
|
||||
@@ -106,6 +106,8 @@ select * from mysqltest2.t1 order by a;
|
||||
connection master;
|
||||
drop database mysqltest2;
|
||||
drop database mysqltest3;
|
||||
# file_id: xx can vary depending on previous tests
|
||||
--replace_regex /file_id=[0-9]/file_id=x/
|
||||
show binlog events from 79;
|
||||
sync_slave_with_master;
|
||||
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
require_manager;
|
||||
source include/master-slave.inc;
|
||||
connect (slave_sec,localhost,root,,test,0,slave.sock-1);
|
||||
connect (slave_ter,localhost,root,,test,0,slave.sock-2);
|
||||
connection master;
|
||||
show variables like 'rpl_recovery_rank';
|
||||
show status like 'Rpl_status';
|
||||
create table t1(n int);
|
||||
drop table t1;
|
||||
sync_slave_with_master;
|
||||
show variables like 'rpl_recovery_rank';
|
||||
show status like 'Rpl_status';
|
||||
connection slave_sec;
|
||||
start slave;
|
||||
sync_with_master;
|
||||
show variables like 'rpl_recovery_rank';
|
||||
show status like 'Rpl_status';
|
||||
connection slave_ter;
|
||||
start slave;
|
||||
sync_with_master;
|
||||
show variables like 'rpl_recovery_rank';
|
||||
show status like 'Rpl_status';
|
||||
|
||||
# End of 4.1 tests
|
||||
@@ -8,6 +8,8 @@
|
||||
# merge table getting renamed.
|
||||
--source include/not_windows.inc
|
||||
|
||||
let $SERVER_VERSION=`select version()`;
|
||||
|
||||
create table t1 (a int);
|
||||
insert into t1 values (10);
|
||||
create table t2 (a int);
|
||||
|
||||
@@ -1,51 +0,0 @@
|
||||
# You must run this test with --manager.
|
||||
|
||||
require_manager;
|
||||
|
||||
# Don't know why, but using TCP/IP connections makes this test fail
|
||||
# with "Lost connection to MySQL server during query" when we
|
||||
# issue a query after the server restart.
|
||||
# Maybe this is something awkward in mysqltest or in the manager?
|
||||
# So we use sockets.
|
||||
connect (master,localhost,root,,test,0,master.sock);
|
||||
connect (slave,localhost,root,,test,0,slave.sock);
|
||||
|
||||
connection master;
|
||||
reset master;
|
||||
drop table if exists t1;
|
||||
# we use CREATE SELECT to verify that DELETE does not get into binlog
|
||||
# before CREATE SELECT
|
||||
create table t1 type=HEAP select 10 as a;
|
||||
insert into t1 values(11);
|
||||
save_master_pos;
|
||||
show binlog events from 79;
|
||||
connection slave;
|
||||
reset slave;
|
||||
start slave;
|
||||
sync_with_master;
|
||||
show create table t1;
|
||||
select * from t1; # should be one row
|
||||
|
||||
server_stop master;
|
||||
server_start master;
|
||||
|
||||
connection master;
|
||||
select * from t1;
|
||||
# to check that DELETE is not written twice
|
||||
# (the LIMIT is to not use the query cache)
|
||||
select * from t1 limit 10;
|
||||
save_master_pos;
|
||||
show binlog events in 'master-bin.002' from 79;
|
||||
|
||||
connection slave;
|
||||
sync_with_master;
|
||||
select * from t1; # should be empty
|
||||
|
||||
# clean up
|
||||
connection master;
|
||||
drop table t1;
|
||||
save_master_pos;
|
||||
connection slave;
|
||||
sync_with_master;
|
||||
|
||||
# End of 4.1 tests
|
||||
@@ -20,11 +20,13 @@ while ($1)
|
||||
}
|
||||
set SQL_LOG_BIN=1;
|
||||
enable_query_log;
|
||||
select * into outfile '../../var/master-data/rpl_loaddatalocal.select_outfile' from t1;
|
||||
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
|
||||
eval select * into outfile '$MYSQLTEST_VARDIR/master-data/rpl_loaddatalocal.select_outfile' from t1;
|
||||
#This will generate a 20KB file, now test LOAD DATA LOCAL
|
||||
truncate table t1;
|
||||
load data local infile './var/master-data/rpl_loaddatalocal.select_outfile' into table t1;
|
||||
system rm ./var/master-data/rpl_loaddatalocal.select_outfile ;
|
||||
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
|
||||
eval load data local infile '$MYSQLTEST_VARDIR/master-data/rpl_loaddatalocal.select_outfile' into table t1;
|
||||
--remove_file $MYSQLTEST_VARDIR/master-data/rpl_loaddatalocal.select_outfile
|
||||
save_master_pos;
|
||||
connection slave;
|
||||
sync_with_master;
|
||||
|
||||
@@ -9,7 +9,7 @@ start slave;
|
||||
connection master;
|
||||
--disable_warnings
|
||||
drop table if exists t1;
|
||||
--enable_warning
|
||||
--enable_warnings
|
||||
create table t1 (n int);
|
||||
insert into t1 values (1);
|
||||
save_master_pos;
|
||||
|
||||
@@ -29,7 +29,4 @@ connection slave;
|
||||
show status like 'Slave_open_temp_tables';
|
||||
|
||||
|
||||
connection master;
|
||||
|
||||
|
||||
# End of 4.1 tests
|
||||
|
||||
@@ -1721,7 +1721,7 @@ select (select a from t1) = (1,2);
|
||||
select (1,2,3) = (select * from t1);
|
||||
-- error 1241
|
||||
select (select * from t1) = (1,2,3);
|
||||
drop table t1
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Item_int_with_ref check (BUG#10020)
|
||||
|
||||
@@ -27,7 +27,7 @@ CREATE TABLE db (
|
||||
KEY User (User)
|
||||
)
|
||||
type=ISAM;
|
||||
--enable-warnings
|
||||
--enable_warnings
|
||||
|
||||
INSERT INTO db VALUES ('%','test', '','Y','Y','Y','Y','Y','Y');
|
||||
INSERT INTO db VALUES ('%','test\_%','','Y','Y','Y','Y','Y','Y');
|
||||
@@ -45,7 +45,7 @@ CREATE TABLE host (
|
||||
PRIMARY KEY Host (Host,Db)
|
||||
)
|
||||
type=ISAM;
|
||||
--enable-warnings
|
||||
--enable_warnings
|
||||
|
||||
--disable_warnings
|
||||
CREATE TABLE user (
|
||||
@@ -64,7 +64,7 @@ CREATE TABLE user (
|
||||
PRIMARY KEY Host (Host,User)
|
||||
)
|
||||
type=ISAM;
|
||||
--enable-warnings
|
||||
--enable_warnings
|
||||
|
||||
INSERT INTO user VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y');
|
||||
INSERT INTO user VALUES ('localhost','', '','N','N','N','N','N','N','N','N','N');
|
||||
|
||||
@@ -23,7 +23,7 @@ CREATE TABLE t2 (a char(257), b varbinary(70000), c varchar(70000000));
|
||||
show columns from t2;
|
||||
create table t3 (a long, b long byte);
|
||||
show create TABLE t3;
|
||||
drop table t1,t2,t3
|
||||
drop table t1,t2,t3;
|
||||
|
||||
#
|
||||
# Check errors with blob
|
||||
|
||||
Reference in New Issue
Block a user