summaryrefslogtreecommitdiff
path: root/mysql-test/t
diff options
context:
space:
mode:
authorguilhem@mysql.com <>2003-05-24 16:43:53 +0200
committerguilhem@mysql.com <>2003-05-24 16:43:53 +0200
commit8a1e18f4cb56e2c8a41e637e60186c1824f8ed16 (patch)
treef52c1e21cb447f101890fd875f33c47e583d5b05 /mysql-test/t
parent6bbeecc64219ee6c99c2a407667ce0c6c88bce72 (diff)
downloadmariadb-git-8a1e18f4cb56e2c8a41e637e60186c1824f8ed16.tar.gz
Fix for bug #490 and #491 (see details below)
Diffstat (limited to 'mysql-test/t')
-rw-r--r--mysql-test/t/insert_select.test19
-rw-r--r--mysql-test/t/rpl_insert_id.test33
2 files changed, 46 insertions, 6 deletions
diff --git a/mysql-test/t/insert_select.test b/mysql-test/t/insert_select.test
index 42f65858d77..695f891f678 100644
--- a/mysql-test/t/insert_select.test
+++ b/mysql-test/t/insert_select.test
@@ -68,3 +68,22 @@ WHERE numeropost=9 ORDER BY numreponse ASC;
DROP TABLE IF EXISTS crash1,crash2;
+
+# Addendum by Guilhem:
+# Check if a partly-completed INSERT SELECT in a MyISAM table goes
+# into the binlog
+drop table if exists t1;
+drop table if exists t2;
+create table t1(a int, unique(a));
+insert into t1 values(2);
+create table t2(a int);
+insert into t2 values(1),(2);
+reset master;
+--error 1062
+insert into t1 select * from t2;
+# The above should produce an error, but still be in the binlog;
+# verify the binlog :
+let $VERSION=`select version()`;
+--replace_result $VERSION VERSION
+show binlog events;
+drop table t1, t2;
diff --git a/mysql-test/t/rpl_insert_id.test b/mysql-test/t/rpl_insert_id.test
index 3f3636d3082..3478aedf3eb 100644
--- a/mysql-test/t/rpl_insert_id.test
+++ b/mysql-test/t/rpl_insert_id.test
@@ -1,6 +1,7 @@
-#see if queries that use both
-#auto_increment and LAST_INSERT_ID()
-#are replicated well
+# see if queries that use both
+# auto_increment and LAST_INSERT_ID()
+# are replicated well
+
source include/master-slave.inc;
connection master;
drop table if exists t1;
@@ -15,9 +16,11 @@ sync_with_master;
select * from t1;
select * from t2;
connection master;
-#check if multi-line inserts,
-#which set last_insert_id to the first id inserted,
-#are replicated the same way
+
+# check if multi-line inserts,
+# which set last_insert_id to the first id inserted,
+# are replicated the same way
+
drop table t1;
drop table t2;
create table t1(a int auto_increment, key(a));
@@ -32,6 +35,24 @@ sync_with_master;
select * from t1;
select * from t2;
connection master;
+
+# check if INSERT SELECT in auto_increment is well replicated (bug #490)
+
+drop table t1;
+drop table t2;
+create table t1(a int auto_increment, key(a));
+create table t2(b int auto_increment, c int, key(b));
+insert into t1 values (10);
+insert into t1 values (null),(null),(null);
+insert into t2 values (5,0);
+insert into t2 (c) select * from t1;
+select * from t2;
+save_master_pos;
+connection slave;
+sync_with_master;
+select * from t1;
+select * from t2;
+connection master;
drop table t1;
drop table t2;
save_master_pos;