[
https://issues.apache.org/jira/browse/HIVE-16998?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16102262#comment-16102262
]
Sahil Takiar commented on HIVE-16998:
-------------------------------------
[~janulatha] looks like there are some issues with building you patch, probably
due to the fact that {{SparkRemoveDynamicPruningBySize.java}} was renamed. You
can run {{./dev-support/smart-apply-patch.sh}} locally to see how Hive QA will
apply your patch file.
Also, I was taking a closer look at the new .q file you added, and something
doesn't look correct in your explain plan. When DPP is enabled for your query,
Stage-2 looks incorrect. It looks like there is an extraneous reduce phase in
the operator plan. If you run {{spark_dynamic_partition_pruning.q}} locally,
you will probably see the issue too.
Can you update the RB for this JIRA?
> Add config to enable HoS DPP only for map-joins
> -----------------------------------------------
>
> Key: HIVE-16998
> URL: https://issues.apache.org/jira/browse/HIVE-16998
> Project: Hive
> Issue Type: Sub-task
> Components: Logical Optimizer, Spark
> Reporter: Sahil Takiar
> Assignee: Janaki Lahorani
> Attachments: HIVE16998.1.patch, HIVE16998.2.patch
>
>
> HoS DPP will split a given operator tree in two under the following
> conditions: it has detected that the query can benefit from DPP, and the
> filter is not a map-join (see SplitOpTreeForDPP).
> This can hurt performance if the the non-partitioned side of the join
> involves a complex operator tree - e.g. the query {{select count(*) from
> srcpart where srcpart.ds in (select max(srcpart.ds) from srcpart union all
> select min(srcpart.ds) from srcpart)}} will require running the subquery
> twice, once in each Spark job.
> Queries with map-joins don't get split into two operator trees and thus don't
> suffer from this drawback. Thus, it would be nice to have a config key that
> just enables DPP on HoS for map-joins.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)