Loading mysql-test/r/subselect.result +11 −0 Original line number Diff line number Diff line Loading @@ -4139,4 +4139,15 @@ SELECT (SELECT SUM(t1.a) FROM t2 WHERE a=1) FROM t1; (SELECT SUM(t1.a) FROM t2 WHERE a=1) 3 DROP TABLE t1,t2; CREATE TABLE t1 (a1 INT, a2 INT); CREATE TABLE t2 (b1 INT, b2 INT); INSERT INTO t1 VALUES (100, 200); INSERT INTO t1 VALUES (101, 201); INSERT INTO t2 VALUES (101, 201); INSERT INTO t2 VALUES (103, 203); SELECT ((a1,a2) IN (SELECT * FROM t2 WHERE b2 > 0)) IS NULL FROM t1; ((a1,a2) IN (SELECT * FROM t2 WHERE b2 > 0)) IS NULL 0 0 DROP TABLE t1, t2; End of 5.0 tests. mysql-test/t/subselect.test +15 −0 Original line number Diff line number Diff line Loading @@ -2987,4 +2987,19 @@ SELECT (SELECT SUM(t1.a) FROM t2 WHERE a!=0) FROM t1; SELECT (SELECT SUM(t1.a) FROM t2 WHERE a=1) FROM t1; DROP TABLE t1,t2; # # Bug #31884: Assertion + crash in subquery in the SELECT clause. # CREATE TABLE t1 (a1 INT, a2 INT); CREATE TABLE t2 (b1 INT, b2 INT); INSERT INTO t1 VALUES (100, 200); INSERT INTO t1 VALUES (101, 201); INSERT INTO t2 VALUES (101, 201); INSERT INTO t2 VALUES (103, 203); SELECT ((a1,a2) IN (SELECT * FROM t2 WHERE b2 > 0)) IS NULL FROM t1; DROP TABLE t1, t2; --echo End of 5.0 tests. sql/item_subselect.h +1 −0 Original line number Diff line number Diff line Loading @@ -306,6 +306,7 @@ class Item_in_subselect :public Item_exists_subselect double val_real(); String *val_str(String*); my_decimal *val_decimal(my_decimal *); void update_null_value () { (void) val_bool(); } bool val_bool(); void top_level_item() { abort_on_null=1; } inline bool is_top_level_item() { return abort_on_null; } Loading Loading
mysql-test/r/subselect.result +11 −0 Original line number Diff line number Diff line Loading @@ -4139,4 +4139,15 @@ SELECT (SELECT SUM(t1.a) FROM t2 WHERE a=1) FROM t1; (SELECT SUM(t1.a) FROM t2 WHERE a=1) 3 DROP TABLE t1,t2; CREATE TABLE t1 (a1 INT, a2 INT); CREATE TABLE t2 (b1 INT, b2 INT); INSERT INTO t1 VALUES (100, 200); INSERT INTO t1 VALUES (101, 201); INSERT INTO t2 VALUES (101, 201); INSERT INTO t2 VALUES (103, 203); SELECT ((a1,a2) IN (SELECT * FROM t2 WHERE b2 > 0)) IS NULL FROM t1; ((a1,a2) IN (SELECT * FROM t2 WHERE b2 > 0)) IS NULL 0 0 DROP TABLE t1, t2; End of 5.0 tests.
mysql-test/t/subselect.test +15 −0 Original line number Diff line number Diff line Loading @@ -2987,4 +2987,19 @@ SELECT (SELECT SUM(t1.a) FROM t2 WHERE a!=0) FROM t1; SELECT (SELECT SUM(t1.a) FROM t2 WHERE a=1) FROM t1; DROP TABLE t1,t2; # # Bug #31884: Assertion + crash in subquery in the SELECT clause. # CREATE TABLE t1 (a1 INT, a2 INT); CREATE TABLE t2 (b1 INT, b2 INT); INSERT INTO t1 VALUES (100, 200); INSERT INTO t1 VALUES (101, 201); INSERT INTO t2 VALUES (101, 201); INSERT INTO t2 VALUES (103, 203); SELECT ((a1,a2) IN (SELECT * FROM t2 WHERE b2 > 0)) IS NULL FROM t1; DROP TABLE t1, t2; --echo End of 5.0 tests.
sql/item_subselect.h +1 −0 Original line number Diff line number Diff line Loading @@ -306,6 +306,7 @@ class Item_in_subselect :public Item_exists_subselect double val_real(); String *val_str(String*); my_decimal *val_decimal(my_decimal *); void update_null_value () { (void) val_bool(); } bool val_bool(); void top_level_item() { abort_on_null=1; } inline bool is_top_level_item() { return abort_on_null; } Loading