diff options
author | unknown <monty@narttu.mysql.fi> | 2003-10-07 15:42:26 +0300 |
---|---|---|
committer | unknown <monty@narttu.mysql.fi> | 2003-10-07 15:42:26 +0300 |
commit | f16887c59c7e896c6504008f6cbea337a5cb3fff (patch) | |
tree | d89c080ef636608e316f1166b1628cd1d902deec /mysql-test/t/rpl000009.test | |
parent | df02cd390d461b50ab5bdf3492aae1071db7da05 (diff) | |
parent | bc4a57f01ace40255de2f8d7307254fd1d1d5bfa (diff) | |
download | mariadb-git-f16887c59c7e896c6504008f6cbea337a5cb3fff.tar.gz |
Merge with 4.0.16
BitKeeper/etc/ignore:
auto-union
BitKeeper/etc/logging_ok:
auto-union
BitKeeper/deleted/.del-mysqldump.result:
Delete: mysql-test/r/mysqldump.result
BitKeeper/deleted/.del-mysqldump.test:
Delete: mysql-test/t/mysqldump.test
BitKeeper/deleted/.del-compile-netware-max:
Delete: netware/BUILD/compile-netware-max
BitKeeper/deleted/.del-compile-netware-max-debug:
Delete: netware/BUILD/compile-netware-max-debug
BitKeeper/deleted/.del-compile-netware-src:
Delete: netware/BUILD/compile-netware-src
BitKeeper/deleted/.del-knetware.imp:
Delete: netware/BUILD/knetware.imp
BUILD/compile-pentium-valgrind-max:
Auto merged
BitKeeper/deleted/.del-mini_client.cc~8677895ec8169183:
Auto merged
BitKeeper/deleted/.del-mysql_fix_privilege_tables.sql:
Auto merged
BitKeeper/deleted/.del-openssl.imp:
Delete: netware/BUILD/openssl.imp
acinclude.m4:
Auto merged
SSL/cacert.pem:
Auto merged
SSL/client-cert.pem:
Auto merged
SSL/server-cert.pem:
Auto merged
client/mysqlbinlog.cc:
Auto merged
extra/resolveip.c:
Auto merged
heap/hp_test2.c:
Auto merged
include/my_global.h:
Auto merged
innobase/row/row0mysql.c:
Auto merged
innobase/row/row0sel.c:
Auto merged
libmysql/libmysql.def:
Auto merged
libmysqld/examples/Makefile.am:
Auto merged
myisam/mi_check.c:
Auto merged
myisam/mi_test2.c:
Auto merged
myisam/myisamdef.h:
Auto merged
mysql-test/r/fulltext_multi.result:
Auto merged
mysql-test/r/fulltext_order_by.result:
Auto merged
mysql-test/r/select.result:
Auto merged
mysql-test/r/user_var.result:
Auto merged
mysql-test/std_data/rpl_loaddata2.dat:
Auto merged
mysql-test/t/rpl_loaddata.test:
Auto merged
mysql-test/t/select.test:
Auto merged
mysql-test/t/user_var.test:
Auto merged
mysys/mf_dirname.c:
Auto merged
scripts/make_win_src_distribution.sh:
Auto merged
sql/des_key_file.cc:
Auto merged
sql/log.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/repl_failsafe.cc:
Auto merged
sql/slave.h:
Auto merged
sql-bench/crash-me.sh:
Auto merged
sql-bench/server-cfg.sh:
Auto merged
sql-bench/test-insert.sh:
Auto merged
sql-bench/test-transactions.sh:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
support-files/mysql.server.sh:
Auto merged
client/mysqltest.c:
Merge with 4.0.16
Changed version number to '2.0' to avoid confusion with version numbering in 3.23
mysql-test/r/distinct.result:
Updated results for merge
mysql-test/r/insert.result:
Updated results for merge
mysql-test/r/insert_select.result:
Updated results for merge
mysql-test/r/join_outer.result:
Updated results for merge
mysql-test/r/mix_innodb_myisam_binlog.result:
Updated results for merge
mysql-test/r/order_by.result:
Updated results for merge
mysql-test/r/rpl000009.result:
Updated results for merge
mysql-test/r/rpl_loaddata.result:
Updated results for merge
mysql-test/r/rpl_log.result:
Updated results for merge
mysql-test/r/select_safe.result:
Updated results for merge
scripts/mysql_install_db.sh:
Change -eq to =
BitKeeper/deleted/.del-ins000001.test~2428ee5c9b1bc483:
dummy
Diffstat (limited to 'mysql-test/t/rpl000009.test')
-rw-r--r-- | mysql-test/t/rpl000009.test | 57 |
1 files changed, 55 insertions, 2 deletions
diff --git a/mysql-test/t/rpl000009.test b/mysql-test/t/rpl000009.test index ffec20c793e..4db62540e7b 100644 --- a/mysql-test/t/rpl000009.test +++ b/mysql-test/t/rpl000009.test @@ -60,16 +60,45 @@ sync_with_master; # This should show that the slave is empty at this point show databases; +# Create foo and foo2 on slave; we expect that LOAD DATA FROM MASTER will +# neither touch database foo nor foo2. +create database foo; +create table foo.t1(n int, s char(20)); +insert into foo.t1 values (1, 'original foo.t1'); +create table foo.t3(n int, s char(20)); +insert into foo.t3 values (1, 'original foo.t3'); +create database foo2; +create table foo2.t1(n int, s char(20)); +insert into foo2.t1 values (1, 'original foo2.t1'); +# Create bar, and bar.t1, to check that it gets replaced, +# and bar.t3 to check that it is not touched (there is no bar.t3 on master) +create database bar; +create table bar.t1(n int, s char(20)); +insert into bar.t1 values (1, 'original bar.t1'); +create table bar.t3(n int, s char(20)); +insert into bar.t3 values (1, 'original bar.t3'); + load data from master; # Now let's check if we have the right tables and the right data in them show databases; use mysqltest2; -show tables; +# LOAD DATA FROM MASTER uses only replicate_*_db rules to decide which databases +# have to be copied. So it thinks "foo" has to be copied. Before 4.0.16 it would +# first drop "foo", then create "foo". This "drop" is a bug; in that case t3 +# would disappear. +# So here the effect of this bug (BUG#1248) would be to leave an empty "foo" on +# the slave. +show tables; # should be t1 & t3 +select * from t1; # should be slave's original +use foo2; +show tables; # should be t1 +select * from t1; # should be slave's original use mysqltest; -show tables; +show tables; # should contain master's copied t1&t2, slave's original t3 select * from mysqltest.t1; select * from mysqltest.t2; +select * from mysqltest.t3; # Now let's see if replication works connection master; @@ -79,6 +108,28 @@ connection slave; sync_with_master; select * from mysqltest.t1; +# Check that LOAD DATA FROM MASTER reports the error if it can't drop a +# table to be overwritten. +# DISABLED FOR NOW AS chmod IS NOT PORTABLE ON NON-UNIX +# insert into bar.t1 values(10, 'should be there'); +# flush tables; +# system chmod 500 var/slave-data/bar/; +# --error 6 +# load data from master; # should fail (errno 13) +# system chmod 700 var/slave-data/bar/; +# select * from bar.t1; # should contain the row (10, ...) + + +# Check that LOAD TABLE FROM MASTER fails if the table exists on slave +--error 1050 +load table bar.t1 from master; +drop table bar.t1; +load table bar.t1 from master; + +# as LOAD DATA FROM MASTER failed it did not restart slave threads +# DISABLED FOR NOW +# start slave; + # Now time for cleanup connection master; drop database mysqltest; @@ -86,3 +137,5 @@ drop database mysqltest2; save_master_pos; connection slave; sync_with_master; +drop database mysqltest; +drop database mysqltest2; |