summaryrefslogtreecommitdiff
path: root/mysql-test/t/view.test
diff options
context:
space:
mode:
authorunknown <sanja@montyprogram.com>2013-11-11 20:38:04 +0200
committerunknown <sanja@montyprogram.com>2013-11-11 20:38:04 +0200
commitdfed447888e1ab71ec0c80b61459bde6ee6eaf66 (patch)
treeb921c0e431da431f8254f434f720fcc469547269 /mysql-test/t/view.test
parent668a5a4ab814d14f95cfbda7776a1f05246dd52e (diff)
parentc98a054fdeab9c2d3a637cf4fce57a2f9756dcc8 (diff)
downloadmariadb-git-dfed447888e1ab71ec0c80b61459bde6ee6eaf66.tar.gz
merge 5.3->5.5
Diffstat (limited to 'mysql-test/t/view.test')
-rw-r--r--mysql-test/t/view.test28
1 files changed, 28 insertions, 0 deletions
diff --git a/mysql-test/t/view.test b/mysql-test/t/view.test
index 0168344a3d2..6424841e017 100644
--- a/mysql-test/t/view.test
+++ b/mysql-test/t/view.test
@@ -4845,6 +4845,34 @@ SELECT * FROM t2 LEFT JOIN v1 ON ( c=b AND a IN ( 1,6 ) );
drop view v1;
drop table t1,t2;
+--echo #
+--echo # MDEV-5153: Server crashes in Item_ref::fix_fields on 2nd execution
+--echo # of PS with LEFT JOIN and MERGE view or SELECT SQ
+--echo #
+
+CREATE TABLE t1 (i1 INT, c1 VARCHAR(6)) ENGINE=MyISAM;
+INSERT INTO t1 VALUES (1,'foo'),(2,'bar');
+
+CREATE TABLE t2 (c2 VARCHAR(6)) ENGINE=MyISAM;
+INSERT INTO t2 VALUES ('foobar'),('qux');
+
+CREATE ALGORITHM=MERGE VIEW v1 AS SELECT * FROM t1 WHERE ( c1 ) IN ( SELECT c2 FROM t2 ) AND i1 <= 2 ;
+
+PREPARE stmt FROM 'SELECT * FROM t1 LEFT JOIN v1 ON (v1.i1 = t1.i1)';
+
+EXECUTE stmt;
+EXECUTE stmt;
+
+drop view v1;
+CREATE ALGORITHM=MERGE VIEW v1 AS SELECT * FROM t1 WHERE ( c1, c1 ) IN ( SELECT c2, c2 FROM t2 ) AND i1 <= 2 ;
+
+EXECUTE stmt;
+EXECUTE stmt;
+
+deallocate prepare stmt;
+drop view v1;
+drop table t1,t2;
+
--echo # -----------------------------------------------------------------
--echo # -- End of 5.3 tests.
--echo # -----------------------------------------------------------------