diff options
author | unknown <evgen@moonbone.local> | 2007-02-11 21:03:40 +0300 |
---|---|---|
committer | unknown <evgen@moonbone.local> | 2007-02-11 21:03:40 +0300 |
commit | a544b64f8d3907a7c73ce93a8165fbe1233280b2 (patch) | |
tree | a5f9aa63476871b662d225e20e1b24f3cfbf9371 | |
parent | ce8c0ec29b85f336567cbf183008db89575f1fc8 (diff) | |
parent | 308da65162429ae0d505a3e04736e57acfea11de (diff) | |
download | mariadb-git-a544b64f8d3907a7c73ce93a8165fbe1233280b2.tar.gz |
Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into moonbone.local:/mnt/gentoo64/work/12122-bug-5.0-opt-mysql
-rw-r--r-- | mysql-test/r/view.result | 39 | ||||
-rw-r--r-- | mysql-test/t/view.test | 14 | ||||
-rw-r--r-- | sql/sql_lex.cc | 1 |
3 files changed, 53 insertions, 1 deletions
diff --git a/mysql-test/r/view.result b/mysql-test/r/view.result index a52882fef2f..462916ec09b 100644 --- a/mysql-test/r/view.result +++ b/mysql-test/r/view.result @@ -3078,4 +3078,43 @@ b 2 DROP VIEW v1; DROP TABLE t1,t2; +create table t1(f1 int, f2 int); +insert into t1 values(1,2),(1,3),(1,1),(2,3),(2,1),(2,2); +select * from t1; +f1 f2 +1 2 +1 3 +1 1 +2 3 +2 1 +2 2 +create view v1 as select * from t1 order by f2; +select * from v1; +f1 f2 +1 1 +2 1 +1 2 +2 2 +1 3 +2 3 +explain extended select * from v1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using filesort +Warnings: +Note 1003 select `test`.`t1`.`f1` AS `f1`,`test`.`t1`.`f2` AS `f2` from `test`.`t1` order by `test`.`t1`.`f2` +select * from v1 order by f1; +f1 f2 +1 1 +1 2 +1 3 +2 1 +2 2 +2 3 +explain extended select * from v1 order by f1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using filesort +Warnings: +Note 1003 select `test`.`t1`.`f1` AS `f1`,`test`.`t1`.`f2` AS `f2` from `test`.`t1` order by `test`.`t1`.`f1`,`test`.`t1`.`f2` +drop view v1; +drop table t1; End of 5.0 tests. diff --git a/mysql-test/t/view.test b/mysql-test/t/view.test index 0fa5765bb64..7fdca1ff7e0 100644 --- a/mysql-test/t/view.test +++ b/mysql-test/t/view.test @@ -3024,4 +3024,18 @@ SELECT * FROM t2; DROP VIEW v1; DROP TABLE t1,t2; +# +# Bug#12122: Views with ORDER BY can't be resolved using MERGE algorithm. +# +create table t1(f1 int, f2 int); +insert into t1 values(1,2),(1,3),(1,1),(2,3),(2,1),(2,2); +select * from t1; +create view v1 as select * from t1 order by f2; +select * from v1; +explain extended select * from v1; +select * from v1 order by f1; +explain extended select * from v1 order by f1; +drop view v1; +drop table t1; + --echo End of 5.0 tests. diff --git a/sql/sql_lex.cc b/sql/sql_lex.cc index a362e6c7fd2..ce76c35b33c 100644 --- a/sql/sql_lex.cc +++ b/sql/sql_lex.cc @@ -1751,7 +1751,6 @@ bool st_lex::can_be_merged() } return (selects_allow_merge && - select_lex.order_list.elements == 0 && select_lex.group_list.elements == 0 && select_lex.having == 0 && select_lex.with_sum_func == 0 && |