summaryrefslogtreecommitdiff
path: root/mysql-test
diff options
context:
space:
mode:
authormskold/marty@mysql.com/linux.site <>2007-01-31 22:38:06 +0100
committermskold/marty@mysql.com/linux.site <>2007-01-31 22:38:06 +0100
commit5cd40ad30b8d340bed6b80e1b05dac7e452f8132 (patch)
treef7d0a02a7ca39c0369883f41cf7bae6aecc56d48 /mysql-test
parent5ebcc10e368796a23bba37332786fa0ef99324ab (diff)
downloadmariadb-git-5cd40ad30b8d340bed6b80e1b05dac7e452f8132.tar.gz
Bug #25522 Update with IN syntax Clustertable + Trigger leads to mysqld segfault: in start_stmt, only change query_state if starting a new transactions, in read_multi_range_next, change query state when end is reached
Diffstat (limited to 'mysql-test')
-rw-r--r--mysql-test/r/ndb_read_multi_range.result17
-rw-r--r--mysql-test/t/ndb_read_multi_range.test29
2 files changed, 46 insertions, 0 deletions
diff --git a/mysql-test/r/ndb_read_multi_range.result b/mysql-test/r/ndb_read_multi_range.result
index e2a076ef99f..d279485e48e 100644
--- a/mysql-test/r/ndb_read_multi_range.result
+++ b/mysql-test/r/ndb_read_multi_range.result
@@ -381,3 +381,20 @@ SELECT id, tag, doc, type FROM t1 WHERE id IN ('flipper','sakila');
id tag doc type
sakila 1 Some text goes here text
DROP TABLE t1;
+CREATE TABLE t1 (
+var1 int(2) NOT NULL,
+var2 int(2) NOT NULL,
+PRIMARY KEY (var1)
+) ENGINE=ndbcluster DEFAULT CHARSET=ascii CHECKSUM=1;
+CREATE TABLE t2 (
+var1 int(2) NOT NULL,
+var2 int(2) NOT NULL,
+PRIMARY KEY (var1)
+) ENGINE=MyISAM DEFAULT CHARSET=ascii CHECKSUM=1;
+CREATE TRIGGER testtrigger
+AFTER UPDATE ON t1 FOR EACH ROW BEGIN
+REPLACE INTO t2 SELECT * FROM t1 WHERE t1.var1 = NEW.var1;END|
+INSERT INTO t1 VALUES (1,1),(2,2),(3,3);
+UPDATE t1 SET var2 = 9 WHERE var1 IN(1,2,3);
+DROP TRIGGER testtrigger;
+DROP TABLE t1, t2;
diff --git a/mysql-test/t/ndb_read_multi_range.test b/mysql-test/t/ndb_read_multi_range.test
index 99edab5d23c..cfbf0561d1e 100644
--- a/mysql-test/t/ndb_read_multi_range.test
+++ b/mysql-test/t/ndb_read_multi_range.test
@@ -253,3 +253,32 @@ SELECT id, tag, doc, type FROM t1 WHERE id IN ('flipper','orka');
SELECT id, tag, doc, type FROM t1 WHERE id IN ('flipper','sakila');
DROP TABLE t1;
+
+#bug#25522
+CREATE TABLE t1 (
+ var1 int(2) NOT NULL,
+ var2 int(2) NOT NULL,
+ PRIMARY KEY (var1)
+ ) ENGINE=ndbcluster DEFAULT CHARSET=ascii CHECKSUM=1;
+
+
+CREATE TABLE t2 (
+ var1 int(2) NOT NULL,
+ var2 int(2) NOT NULL,
+ PRIMARY KEY (var1)
+ ) ENGINE=MyISAM DEFAULT CHARSET=ascii CHECKSUM=1;
+
+
+DELIMITER |;
+CREATE TRIGGER testtrigger
+ AFTER UPDATE ON t1 FOR EACH ROW BEGIN
+ REPLACE INTO t2 SELECT * FROM t1 WHERE t1.var1 = NEW.var1;END|
+DELIMITER ;|
+
+INSERT INTO t1 VALUES (1,1),(2,2),(3,3);
+
+UPDATE t1 SET var2 = 9 WHERE var1 IN(1,2,3);
+
+DROP TRIGGER testtrigger;
+
+DROP TABLE t1, t2;