diff options
Diffstat (limited to 'mysql-test/t/subselect3.test')
-rw-r--r-- | mysql-test/t/subselect3.test | 41 |
1 files changed, 40 insertions, 1 deletions
diff --git a/mysql-test/t/subselect3.test b/mysql-test/t/subselect3.test index 7e9aa1554c0..7c3d5013b8d 100644 --- a/mysql-test/t/subselect3.test +++ b/mysql-test/t/subselect3.test @@ -1,5 +1,5 @@ --disable_warnings -drop table if exists t0, t1, t2, t3, t4; +drop table if exists t0, t1, t2, t3, t4, t5; --enable_warnings # @@ -641,3 +641,42 @@ WHERE NULL NOT IN ( DROP TABLE t1; --echo End of 5.0 tests + +# +# BUG#36135 "void Diagnostics_area::set_eof_status(THD*): Assertion `!is_set()' failed." +# +create table t0 (a int); +insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); + +create table t1 ( + a int(11) default null, + b int(11) default null, + key (a) +); +# produce numbers 0..999 +insert into t1 select A.a+10*(B.a+10*C.a),A.a+10*(B.a+10*C.a) from t0 A, t0 B, t0 C; + +create table t2 (a int(11) default null); +insert into t2 values (0),(1); + +create table t3 (a int(11) default null); +insert into t3 values (0),(1); + +create table t4 (a int(11) default null); +insert into t4 values (0),(1); + +create table t5 (a int(11) default null); +insert into t5 values (0),(1),(0),(1); + +# this must not fail assertion +--error 1242 +select * from t2, t3 +where + t2.a < 10 and + t3.a+1 = 2 and + t3.a in (select t1.b from t1 + where t1.a+1=t1.a+1 and + t1.a < (select t4.a+10 + from t4, t5 limit 2)); + +drop table t0, t1, t2, t3, t4, t5; |