[
https://issues.apache.org/jira/browse/HIVE-22363?focusedWorklogId=332092&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-332092
]
ASF GitHub Bot logged work on HIVE-22363:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 22/Oct/19 17:05
Start Date: 22/Oct/19 17:05
Worklog Time Spent: 10m
Work Description: jcamachor commented on pull request #819: HIVE-22363
ReduceDeduplication may leave an invalid GroupByOperator behind in some cases
URL: https://github.com/apache/hive/pull/819#discussion_r337640161
##########
File path: ql/src/test/results/clientpositive/llap/explainuser_1.q.out
##########
@@ -4990,38 +4990,44 @@ Vertex dependency in root stage
Reducer 2 <- Map 1 (SIMPLE_EDGE)
Reducer 3 <- Reducer 2 (SIMPLE_EDGE)
Reducer 4 <- Reducer 3 (SIMPLE_EDGE)
+Reducer 5 <- Reducer 4 (SIMPLE_EDGE)
Review comment:
Since the plan is a user explain, it does not show the sorting keys in the
shuffle. However, group by operator produces correct results if we partition
data by first column and sort by the three grouping columns. I believe that is
what was happening here. The additional shuffle phase is unnecessary.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 332092)
Time Spent: 1h 20m (was: 1h 10m)
> ReduceDeduplication may leave an invalid GroupByOperator behind in some cases
> -----------------------------------------------------------------------------
>
> Key: HIVE-22363
> URL: https://issues.apache.org/jira/browse/HIVE-22363
> Project: Hive
> Issue Type: Bug
> Components: Physical Optimizer
> Affects Versions: 3.1.2
> Reporter: Zoltan Haindrich
> Assignee: Zoltan Haindrich
> Priority: Major
> Labels: pull-request-available
> Attachments: HIVE-22363.01.patch, HIVE-22363.02.patch,
> HIVE-22363.03.patch
>
> Time Spent: 1h 20m
> Remaining Estimate: 0h
>
> since HIVE-11387 reducededup may traverse {{GroupByOperators}} [as
> well|https://github.com/apache/hive/blob/c6626edb65c2cd00576647e54db1995628fe64da/ql/src/java/org/apache/hadoop/hive/ql/optimizer/correlation/CorrelationUtilities.java#L244]
> But the removal logic only removes the first parent; so if there is some
> other operator (a FIL in this case) between the sink and the gby - the
> removal may not happen
> [here|https://github.com/apache/hive/blob/c6626edb65c2cd00576647e54db1995628fe64da/ql/src/java/org/apache/hadoop/hive/ql/optimizer/correlation/CorrelationUtilities.java#L458]
> {code}
> set hive.cbo.enable=false;
> drop table if exists xl1;
> create table xl1 as
> select '1' as mdl_yr_desc, 2 as seq_no,'3' as opt_desc1,4 as opt_desc,1 as
> row_num;
> explain
> select trim(base.mdl_yr_desc) mdl_yr_desc, trim(base.opt_desc) opt_desc
> from
> (
> SELECT trim(mdl_yr_desc) mdl_yr_desc, concat_ws(' ',
> collect_set(trim(opt_desc1))) AS opt_desc
> from
> (
> select t14304.*
> from
> (
> select * from xl1
> ) t14304
> where row_num = 1
> order by trim(mdl_yr_desc), cast(seq_no as int) asc
> ) x
> group by trim(mdl_yr_desc)
> ) base
> inner join
> (
> select 1 as v
> ) dedup
> on trim(base.mdl_yr_desc) != dedup.v
> group by trim(base.mdl_yr_desc), trim(base.opt_desc) ;
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)