summaryrefslogtreecommitdiff
path: root/mysql-test/t/rpl_insert_id.test
diff options
context:
space:
mode:
authorunknown <monty@mashka.mysql.fi>2003-01-28 06:48:26 +0200
committerunknown <monty@mashka.mysql.fi>2003-01-28 06:48:26 +0200
commit72455300841e1b00c312c3a03ace3bcbd57a4d2f (patch)
tree9e418865f0fad863fd9f50122562955a2ff1b8e3 /mysql-test/t/rpl_insert_id.test
parentc46c1258274f4993e5c5cc30cd0d4137d611db5f (diff)
downloadmariadb-git-72455300841e1b00c312c3a03ace3bcbd57a4d2f.tar.gz
Fix when using auto_increment and last_insert_id() in the same insert statement.
sql/sql_base.cc: S
Diffstat (limited to 'mysql-test/t/rpl_insert_id.test')
-rw-r--r--mysql-test/t/rpl_insert_id.test39
1 files changed, 39 insertions, 0 deletions
diff --git a/mysql-test/t/rpl_insert_id.test b/mysql-test/t/rpl_insert_id.test
new file mode 100644
index 00000000000..3f3636d3082
--- /dev/null
+++ b/mysql-test/t/rpl_insert_id.test
@@ -0,0 +1,39 @@
+#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;
+create table t1(a int auto_increment, key(a));
+create table t2(b int auto_increment, c int, key(b));
+insert into t1 values (1),(2),(3);
+insert into t1 values (null);
+insert into t2 values (null,last_insert_id());
+save_master_pos;
+connection slave;
+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
+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 values (null,last_insert_id());
+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;
+connection slave;
+sync_with_master;