summaryrefslogtreecommitdiff
path: root/mysql-test/t
diff options
context:
space:
mode:
authorIgor Babaev <igor@askmonty.org>2013-10-14 10:29:24 -0700
committerIgor Babaev <igor@askmonty.org>2013-10-14 10:29:24 -0700
commit81623bdc357e3a6c9bd5582d2e2d038a0bb2d093 (patch)
tree59f97c13ce2aa685113cc0869f0f6e8eb2c94717 /mysql-test/t
parent78b580b77965d63d4292a72a3ba12d0cc83b01a3 (diff)
downloadmariadb-git-81623bdc357e3a6c9bd5582d2e2d038a0bb2d093.tar.gz
Fixed bug mdev-5135.
The patch for bug mdev-5105 incorrectly counted conditions in nested joins.
Diffstat (limited to 'mysql-test/t')
-rw-r--r--mysql-test/t/subselect_sj2.test20
1 files changed, 20 insertions, 0 deletions
diff --git a/mysql-test/t/subselect_sj2.test b/mysql-test/t/subselect_sj2.test
index 1afc39264ea..91db113d35a 100644
--- a/mysql-test/t/subselect_sj2.test
+++ b/mysql-test/t/subselect_sj2.test
@@ -1229,5 +1229,25 @@ WHERE alias3.d IN (
set optimizer_prune_level=@tmp_951283;
DROP TABLE t1,t2;
+--echo #
+--echo # Bug mdev-5135: crash on semijoin with nested outer joins
+--echo #
+
+CREATE TABLE t1 (i1 int) ENGINE=MyISAM;
+INSERT INTO t1 VALUES (1),(2);
+
+CREATE TABLE t2 (i2 int, INDEX(i2)) ENGINE=MyISAM;
+
+CREATE TABLE t3 (i3 int, c varchar(1), INDEX(i3), INDEX(c)) ENGINE=MyISAM;
+INSERT INTO t3 VALUES (3,'x'),(4,'y');
+
+SELECT * FROM t1 WHERE ( 1, 1 ) IN (
+ SELECT i2, i2 FROM t2 LEFT OUTER JOIN (
+ t3 AS t3a INNER JOIN t3 AS t3b ON ( t3a.i3 = t3b.i3 )
+ ) ON ( t3a.c = t3b.c )
+);
+
+DROP TABLE t1,t2,t3;
+
--echo # This must be the last in the file:
set optimizer_switch=@subselect_sj2_tmp;