1
0
mirror of https://github.com/MariaDB/server.git synced 2026-01-06 05:22:24 +03:00

Merge 5.3->5.5

This commit is contained in:
Igor Babaev
2013-05-04 21:56:45 -07:00
11 changed files with 246 additions and 2 deletions

View File

@@ -5119,6 +5119,7 @@ SELECT 1 FROM t1 GROUP BY 1;
1
1
drop table t1;
set sql_buffer_result= 0;
#
# Bug #58422: Incorrect result when OUTER JOIN'ing
# with an empty table
@@ -5322,4 +5323,38 @@ AND Time_zone_id = Time_zone_id
OR Time_zone_id <> Time_zone_id )
AND Use_leap_seconds <> 'N';
Time_zone_id Use_leap_seconds
#
# Bug mdev-4274: result of simplification of OR badly merged
# into embedding AND
#
CREATE TABLE t1 (a int, b int, INDEX idx(b)) ENGINE=MyISAM;
INSERT INTO t1 VALUES (8,8);
CREATE TABLE t2 (c int, INDEX idx(c)) ENGINE=MyISAM;
INSERT INTO t2 VALUES (8), (9);
EXPLAIN EXTENDED
SELECT * FROM t1 INNER JOIN t2 ON ( c = a )
WHERE 1 IS NULL OR b < 33 AND b = c;
id select_type table type possible_keys key key_len ref rows filtered Extra
1 SIMPLE t1 system idx NULL NULL NULL 1 100.00
1 SIMPLE t2 ref idx idx 5 const 1 100.00 Using index
Warnings:
Note 1003 select 8 AS `a`,8 AS `b`,`test`.`t2`.`c` AS `c` from `test`.`t2` where ((`test`.`t2`.`c` = 8) and 1)
SELECT * FROM t1 INNER JOIN t2 ON ( c = a )
WHERE 1 IS NULL OR b < 33 AND b = c;
a b c
8 8 8
DROP TABLE t1,t2;
#
# Bug mdev-4413: another manifestations of bug mdev-2474
# (valgrind complains)
#
CREATE TABLE t1 (a int, b int) ENGINE=MyISAM;
INSERT INTO t1 VALUES (7,1);
CREATE TABLE t2 (c int) ENGINE=MyISAM;
INSERT INTO t2 VALUES (0), (8);
SELECT * FROM t1, t2
WHERE c = a AND
( 0 OR ( b BETWEEN 45 AND 300 OR a > 45 AND a < 100 ) AND b = c );
a b c
DROP TABLE t1, t2;
End of 5.3 tests