You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Zhihua Deng (Jira)" <ji...@apache.org> on 2021/06/11 04:38:00 UTC
[jira] [Updated] (HIVE-24969) Predicates may be removed when
decorrelating subqueries with lateral
[ https://issues.apache.org/jira/browse/HIVE-24969?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Zhihua Deng updated HIVE-24969:
-------------------------------
Summary: Predicates may be removed when decorrelating subqueries with lateral (was: Predicates are removed by PPD when left semi join followed by lateral view)
> Predicates may be removed when decorrelating subqueries with lateral
> --------------------------------------------------------------------
>
> Key: HIVE-24969
> URL: https://issues.apache.org/jira/browse/HIVE-24969
> Project: Hive
> Issue Type: Bug
> Components: Logical Optimizer
> Reporter: Zhihua Deng
> Assignee: Zhihua Deng
> Priority: Major
> Labels: pull-request-available
> Time Spent: 1h
> Remaining Estimate: 0h
>
> Step to reproduce:
> {code:java}
> select count(distinct logItem.triggerId)
> from service_stat_log LATERAL VIEW explode(logItems) LogItemTable AS logItem
> where logItem.dsp in ('delivery', 'ocpa')
> and logItem.iswin = true
> and logItem.adid in (
> select distinct adId
> from ad_info
> where subAccountId in (16010, 14863)); {code}
> For predicates _logItem.dsp in ('delivery', 'ocpa')_ and _logItem.iswin = true_ are removed when doing ppd: JOIN -> RS -> LVJ. The JOIN has candicates: logitem -> [logItem.dsp in ('delivery', 'ocpa'), logItem.iswin = true],when pushing them to the RS followed by LVJ, none of them are pushed, the candicates of logitem are removed finally by default, which cause to the wrong result.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)