You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "John Sichi (JIRA)" <ji...@apache.org> on 2010/08/24 02:02:16 UTC
[jira] Created: (HIVE-1586) prune operators for empty inputs
prune operators for empty inputs
--------------------------------
Key: HIVE-1586
URL: https://issues.apache.org/jira/browse/HIVE-1586
Project: Hadoop Hive
Issue Type: Improvement
Components: Query Processor
Affects Versions: 0.6.0
Reporter: John Sichi
Assignee: John Sichi
Fix For: 0.7.0
Given this:
create view v as
select * from (
select *,'T1' as m from pokes
union all
select *,'T2' as m from pokes2) u;
select * from v
where m='T2';
When we optimize the query, we can prune away all inputs to the union other than the one which references pokes2.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HIVE-1586) prune operators for empty inputs
Posted by "John Sichi (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-1586?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12901677#action_12901677 ]
John Sichi commented on HIVE-1586:
----------------------------------
Predicate pushdown already takes us half-way there, since we end up with this in the plan:
Filter Operator
predicate:
expr: ('T1' = 'T2')
The remaining work is to evaluate all-constant predicates and if false, replace the corresponding Filter with a dummy empty input (or propagate the emptiness further via relational algebra "zero" rules).
> prune operators for empty inputs
> --------------------------------
>
> Key: HIVE-1586
> URL: https://issues.apache.org/jira/browse/HIVE-1586
> Project: Hadoop Hive
> Issue Type: Improvement
> Components: Query Processor
> Affects Versions: 0.6.0
> Reporter: John Sichi
> Assignee: John Sichi
> Fix For: 0.7.0
>
>
> Given this:
> create view v as
> select * from (
> select *,'T1' as m from pokes
> union all
> select *,'T2' as m from pokes2) u;
> select * from v
> where m='T2';
> When we optimize the query, we can prune away all inputs to the union other than the one which references pokes2.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.