mirror of
https://github.com/MariaDB/server.git
synced 2026-05-15 11:27:39 +02:00
Fixed bug #19396: a crash for a an outer join operation
over two views when using syntax with curly braces. Each outer join operation must be placed in a separate nest. This was not done when the syntax with curly braces was used. In some cases, in particular, for queries with outer join operation over views it could cause a crash. mysql-test/r/join_outer.result: Added a test case for bug #19396. mysql-test/t/join_outer.test: Added a test case for bug #19396.
This commit is contained in:
parent
e7f87bd0b7
commit
fbafa42bf3
3 changed files with 52 additions and 0 deletions
|
|
@ -1154,3 +1154,25 @@ id select_type table type possible_keys key key_len ref rows Extra
|
|||
1 SIMPLE t1 index PRIMARY,name name 23 NULL 3 Using where; Using index
|
||||
1 SIMPLE t2 ref fkey fkey 5 test.t1.id 1 Using where; Using index
|
||||
DROP TABLE t1,t2;
|
||||
DROP VIEW IF EXISTS v1,v2;
|
||||
DROP TABLE IF EXISTS t1,t2;
|
||||
CREATE TABLE t1 (a int);
|
||||
CREATE table t2 (b int);
|
||||
INSERT INTO t1 VALUES (1), (2), (3), (4), (1), (1), (3);
|
||||
INSERT INTO t2 VALUES (2), (3);
|
||||
CREATE VIEW v1 AS SELECT a FROM t1 JOIN t2 ON t1.a=t2.b;
|
||||
CREATE VIEW v2 AS SELECT b FROM t2 JOIN t1 ON t2.b=t1.a;
|
||||
SELECT v1.a, v2. b
|
||||
FROM v1 LEFT OUTER JOIN v2 ON (v1.a=v2.b) AND (v1.a >= 3)
|
||||
GROUP BY v1.a;
|
||||
a b
|
||||
2 NULL
|
||||
3 3
|
||||
SELECT v1.a, v2. b
|
||||
FROM { OJ v1 LEFT OUTER JOIN v2 ON (v1.a=v2.b) AND (v1.a >= 3) }
|
||||
GROUP BY v1.a;
|
||||
a b
|
||||
2 NULL
|
||||
3 3
|
||||
DROP VIEW v1,v2;
|
||||
DROP TABLE t1,t2;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue