hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Walter Wu (JIRA)" <j...@apache.org>
Subject [jira] [Assigned] (HIVE-15888) constant propagation optimizer failed when query has the same alias with subquery
Date Tue, 14 Feb 2017 02:49:41 GMT

     [ https://issues.apache.org/jira/browse/HIVE-15888?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Walter Wu reassigned HIVE-15888:
--------------------------------

    Assignee:     (was: Walter Wu)

> constant propagation optimizer failed when query has the same alias with subquery
> ---------------------------------------------------------------------------------
>
>                 Key: HIVE-15888
>                 URL: https://issues.apache.org/jira/browse/HIVE-15888
>             Project: Hive
>          Issue Type: Bug
>          Components: Logical Optimizer
>    Affects Versions: 1.2.1
>            Reporter: Walter Wu
>
> Example  :
> select * 
> from dpdim_employee_org_d c 
> join 
> (
> select a.* from dpmid_md_organization a
> left outer join dpmid_md_organization b 
> on a.organizationid = b.superiororganizationid and b.hisdate = '2016-10-05'
> where a.hisdate = '2016-09-05'
> and b.organizationid is null 
> ) b 
> on c.org_id = b.organizationid 
> and c.hp_cal_dt = '2016-09-05' limit 10;
> Description:
> when ppd optimize is enabled this query has empty result . If we unenabled constant propagation
optimize or we replace the subquery alias 'b' with 'b1' , this query will work correctly.
> I explain this query and find that after ppd optimize Filter Operator predicate conf
changed from 'predicate: superiororganizationid is not null (type: boolean)' to 'predicate:
false (type: boolean)'.
> The subquery has a filter predicate conf 'b.organizationid is null','b.organizationid'
should equal to 'b:b.organizationid' . The outer query has a filter predicate conf 'b.organizationid
is not null', 'b.organizationid' should equal to 'b:a.organizationid'. While rowSchema get
Column Info on tabAlias:'b' and alias:'organizationid'. constant propagation optimize combine
'b.organizationid is not null' and  'b.organizationid is null' to 'constant false' . 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message