diff options
author | unknown <msvensson@neptunus.(none)> | 2006-10-03 20:22:28 +0200 |
---|---|---|
committer | unknown <msvensson@neptunus.(none)> | 2006-10-03 20:22:28 +0200 |
commit | c8b64ea17cf81dcab30f341160a1c07d5c6ccaae (patch) | |
tree | 23831d205e9500c9e8dcbeefabd6505c5b3dfb71 /mysql-test | |
parent | c9970c5b418742395fb01df17397e50c3e7c3d16 (diff) | |
parent | 0416b69da6da17747cc8571b5cd040b25aa81d16 (diff) | |
download | mariadb-git-c8b64ea17cf81dcab30f341160a1c07d5c6ccaae.tar.gz |
Merge bk-internal:/home/bk/mysql-5.1
into neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
sql/item_func.cc:
Auto merged
sql/log.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_select.cc:
Auto merged
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/extra/rpl_tests/rpl_insert_id.test | 17 | ||||
-rw-r--r-- | mysql-test/r/rpl_insert_id.result | 18 |
2 files changed, 35 insertions, 0 deletions
diff --git a/mysql-test/extra/rpl_tests/rpl_insert_id.test b/mysql-test/extra/rpl_tests/rpl_insert_id.test index 6d38760a849..33194270d37 100644 --- a/mysql-test/extra/rpl_tests/rpl_insert_id.test +++ b/mysql-test/extra/rpl_tests/rpl_insert_id.test @@ -337,6 +337,7 @@ DROP TABLE t1, t2; DROP PROCEDURE IF EXISTS p1; DROP FUNCTION IF EXISTS f1; DROP FUNCTION IF EXISTS f2; +DROP FUNCTION IF EXISTS f3; DROP TABLE IF EXISTS t1, t2; --enable_warnings @@ -366,6 +367,12 @@ END | CREATE FUNCTION f2() RETURNS INT NOT DETERMINISTIC RETURN LAST_INSERT_ID() | + +CREATE FUNCTION f3() RETURNS INT MODIFIES SQL DATA +BEGIN + INSERT INTO t2 (i) VALUES (LAST_INSERT_ID()); + RETURN 0; +END | delimiter ;| INSERT INTO t1 VALUES (NULL, -1); @@ -380,6 +387,15 @@ INSERT INTO t1 VALUES (NULL, LAST_INSERT_ID()), (NULL, LAST_INSERT_ID(5)), INSERT INTO t1 VALUES (NULL, 0), (NULL, LAST_INSERT_ID()); UPDATE t1 SET j= -1 WHERE i IS NULL; +# Test statement-based replication of function calls. +INSERT INTO t1 (i) VALUES (NULL); + +connection master1; +INSERT INTO t1 (i) VALUES (NULL); + +connection master; +SELECT f3(); + SELECT * FROM t1; SELECT * FROM t2; @@ -391,6 +407,7 @@ connection master; DROP PROCEDURE p1; DROP FUNCTION f1; DROP FUNCTION f2; +DROP FUNCTION f3; DROP TABLE t1, t2; diff --git a/mysql-test/r/rpl_insert_id.result b/mysql-test/r/rpl_insert_id.result index 5df103f6ea0..63be35b8720 100644 --- a/mysql-test/r/rpl_insert_id.result +++ b/mysql-test/r/rpl_insert_id.result @@ -301,6 +301,7 @@ DROP TABLE t1, t2; DROP PROCEDURE IF EXISTS p1; DROP FUNCTION IF EXISTS f1; DROP FUNCTION IF EXISTS f2; +DROP FUNCTION IF EXISTS f3; DROP TABLE IF EXISTS t1, t2; CREATE TABLE t1 ( i INT NOT NULL AUTO_INCREMENT PRIMARY KEY, @@ -324,6 +325,11 @@ RETURN 0; END | CREATE FUNCTION f2() RETURNS INT NOT DETERMINISTIC RETURN LAST_INSERT_ID() | +CREATE FUNCTION f3() RETURNS INT MODIFIES SQL DATA +BEGIN +INSERT INTO t2 (i) VALUES (LAST_INSERT_ID()); +RETURN 0; +END | INSERT INTO t1 VALUES (NULL, -1); CALL p1(); SELECT f1(); @@ -336,6 +342,11 @@ INSERT INTO t1 VALUES (NULL, LAST_INSERT_ID()), (NULL, LAST_INSERT_ID(5)), (NULL, @@LAST_INSERT_ID); INSERT INTO t1 VALUES (NULL, 0), (NULL, LAST_INSERT_ID()); UPDATE t1 SET j= -1 WHERE i IS NULL; +INSERT INTO t1 (i) VALUES (NULL); +INSERT INTO t1 (i) VALUES (NULL); +SELECT f3(); +f3() +0 SELECT * FROM t1; i j 1 -1 @@ -356,12 +367,15 @@ i j 16 13 17 -1 18 14 +19 0 +20 0 SELECT * FROM t2; i 2 3 5 6 +19 SELECT * FROM t1; i j 1 -1 @@ -382,15 +396,19 @@ i j 16 13 17 -1 18 14 +19 0 +20 0 SELECT * FROM t2; i 2 3 5 6 +19 DROP PROCEDURE p1; DROP FUNCTION f1; DROP FUNCTION f2; +DROP FUNCTION f3; DROP TABLE t1, t2; # # End of 5.0 tests |