You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Andre Araujo (JIRA)" <ji...@apache.org> on 2019/05/16 19:17:00 UTC
[jira] [Created] (HIVE-21745) Change in join order causes query
parse to fail
Andre Araujo created HIVE-21745:
-----------------------------------
Summary: Change in join order causes query parse to fail
Key: HIVE-21745
URL: https://issues.apache.org/jira/browse/HIVE-21745
Project: Hive
Issue Type: Bug
Components: Hive
Affects Versions: 1.1.0
Reporter: Andre Araujo
I ran into the following case, where a query fails to parse if the join order is changed:
{code}
reate database if not exists test;
drop table if exists test.table1;
create table test.table1 (
id string,
col_a string
)
stored as textfile;
drop table if exists test.table2;
create table test.table2 (
id string
)
stored as textfile;
drop table if exists test.table3;
create table test.table3 (
col_a string,
col_b string
)
stored as textfile;
drop table if exists test.table4;
create table test.table4 (
id string
)
stored as textfile;
-- This fails with: Invalid table alias or column reference 't3': (possible column names are: id, col_a)
drop view if exists test.v;
create view test.v as
select
1
from
test.table1 as t1
left join test.table2 as t2 on t2.id = t1.id
left join test.table3 as t3 on t1.col_a = t3.col_a
left join test.table4 as t4 on t1.id = t4.id and t3.col_b = 'X'
;
-- This works
drop view if exists test.v;
create view test.v as
select
1
from
test.table1 as t1
left join test.table3 as t3 on t1.col_a = t3.col_a
left join test.table4 as t4 on t1.id = t4.id and t3.col_b = 'X'
left join test.table2 as t2 on t2.id = t1.id
;
{code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)