diff options
author | unknown <igor@olga.mysql.com> | 2007-08-16 17:22:50 -0700 |
---|---|---|
committer | unknown <igor@olga.mysql.com> | 2007-08-16 17:22:50 -0700 |
commit | 59a11546753422b7c5c256f26c313a0396dbbb6b (patch) | |
tree | 8df9e6e80c1b71015982942c7f7276fc5b2c4160 /mysql-test/t/select.test | |
parent | fae4347f88824e956281511d5679f1610202b604 (diff) | |
parent | a8f8e5483e7925ce804c3900752f88fdf43cb3ee (diff) | |
download | mariadb-git-59a11546753422b7c5c256f26c313a0396dbbb6b.tar.gz |
Merge olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug30396
into olga.mysql.com:/home/igor/dev-opt/mysql-5.1-opt-bug30396
libmysql/libmysql.c:
Auto merged
mysql-test/r/select.result:
Auto merged
mysql-test/t/select.test:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_select.cc:
Auto merged
tests/mysql_client_test.c:
Manual merge
Diffstat (limited to 'mysql-test/t/select.test')
-rw-r--r-- | mysql-test/t/select.test | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/mysql-test/t/select.test b/mysql-test/t/select.test index b513d17bfa0..3f17eb92d40 100644 --- a/mysql-test/t/select.test +++ b/mysql-test/t/select.test @@ -3389,4 +3389,64 @@ eval EXPLAIN SELECT c1 FROM t1 WHERE $q > 0; DROP TABLE t1; +# +# Bug #30396: crash for a join with equalities and sargable predicates +# in disjunctive parts of the WHERE condition +# + +CREATE TABLE t1 ( + c1 int(11) NOT NULL AUTO_INCREMENT, + c2 varchar(1000) DEFAULT NULL, + c3 bigint(20) DEFAULT NULL, + c4 bigint(20) DEFAULT NULL, + PRIMARY KEY (c1) +); + +EXPLAIN EXTENDED +SELECT join_2.c1 +FROM + t1 AS join_0, + t1 AS join_1, + t1 AS join_2, + t1 AS join_3, + t1 AS join_4, + t1 AS join_5, + t1 AS join_6, + t1 AS join_7 +WHERE + join_0.c1=join_1.c1 AND + join_1.c1=join_2.c1 AND + join_2.c1=join_3.c1 AND + join_3.c1=join_4.c1 AND + join_4.c1=join_5.c1 AND + join_5.c1=join_6.c1 AND + join_6.c1=join_7.c1 + OR + join_0.c2 < '?' AND + join_1.c2 < '?' AND + join_2.c2 > '?' AND + join_2.c2 < '!' AND + join_3.c2 > '?' AND + join_4.c2 = '?' AND + join_5.c2 <> '?' AND + join_6.c2 <> '?' AND + join_7.c2 >= '?' AND + join_0.c1=join_1.c1 AND + join_1.c1=join_2.c1 AND + join_2.c1=join_3.c1 AND + join_3.c1=join_4.c1 AND + join_4.c1=join_5.c1 AND + join_5.c1=join_6.c1 AND + join_6.c1=join_7.c1 +GROUP BY + join_3.c1, + join_2.c1, + join_7.c1, + join_1.c1, + join_0.c1; + +SHOW WARNINGS; + +DROP TABLE t1; + --echo End of 5.0 tests |