summaryrefslogtreecommitdiff
path: root/mysql-test/t/subselect.test
diff options
context:
space:
mode:
authorTor Didriksen <tor.didriksen@oracle.com>2011-05-05 08:13:22 +0200
committerTor Didriksen <tor.didriksen@oracle.com>2011-05-05 08:13:22 +0200
commit294fb44d67ff1b12e11b7f771d5260ed2b1b97fb (patch)
treecd172df35bbbc323a22f426774bc859ed6080cb5 /mysql-test/t/subselect.test
parente889b48749583751895b8f34e1906c93f69d53f0 (diff)
parent9baf84e99a6d7edd36c777593a90671d02aacbc9 (diff)
downloadmariadb-git-294fb44d67ff1b12e11b7f771d5260ed2b1b97fb.tar.gz
merge 5.1 => 5.5 : Bug#12329653
Diffstat (limited to 'mysql-test/t/subselect.test')
-rw-r--r--mysql-test/t/subselect.test33
1 files changed, 33 insertions, 0 deletions
diff --git a/mysql-test/t/subselect.test b/mysql-test/t/subselect.test
index f60ee247ba7..5230dd5ddc4 100644
--- a/mysql-test/t/subselect.test
+++ b/mysql-test/t/subselect.test
@@ -3387,6 +3387,39 @@ ORDER BY outr.pk;
DROP TABLE t1,t2;
+--echo #
+--echo # Bug#12329653
+--echo # EXPLAIN, UNION, PREPARED STATEMENT, CRASH, SQL_FULL_GROUP_BY
+--echo #
+
+CREATE TABLE t1(a1 int);
+INSERT INTO t1 VALUES (1),(2);
+
+SELECT @@session.sql_mode INTO @old_sql_mode;
+SET SESSION sql_mode='ONLY_FULL_GROUP_BY';
+
+## First a simpler query, illustrating the transformation
+## '1 < some (...)' => '1 < max(...)'
+SELECT 1 FROM t1 WHERE 1 < SOME (SELECT a1 FROM t1);
+
+## The query which made the server crash.
+PREPARE stmt FROM
+'SELECT 1 UNION ALL
+SELECT 1 FROM t1
+ORDER BY
+(SELECT 1 FROM t1 AS t1_0
+ WHERE 1 < SOME (SELECT a1 FROM t1)
+)' ;
+
+--error ER_SUBQUERY_NO_1_ROW
+EXECUTE stmt ;
+--error ER_SUBQUERY_NO_1_ROW
+EXECUTE stmt ;
+
+SET SESSION sql_mode=@old_sql_mode;
+
+DEALLOCATE PREPARE stmt;
+DROP TABLE t1;
--echo End of 5.0 tests.