jcamachor commented on a change in pull request #952: HIVE-23006 ProbeDecode 
compiler support
URL: https://github.com/apache/hive/pull/952#discussion_r405762816
 
 

 ##########
 File path: ql/src/java/org/apache/hadoop/hive/ql/parse/TezCompiler.java
 ##########
 @@ -1483,17 +1489,64 @@ private void 
removeSemijoinsParallelToMapJoin(OptimizeTezProcContext procCtx)
       }
     }
 
-    if (semijoins.size() > 0) {
-      for (ReduceSinkOperator rs : semijoins.keySet()) {
-        if (LOG.isDebugEnabled()) {
-          LOG.debug("Semijoin optimization with parallel edge to map join. 
Removing semijoin "
-              + OperatorUtils.getOpNamePretty(rs) + " - " + 
OperatorUtils.getOpNamePretty(semijoins.get(rs)));
+    if 
(!procCtx.conf.getBoolVar(ConfVars.TEZ_DYNAMIC_SEMIJOIN_REDUCTION_FOR_MAPJOIN)) 
{
+      if (semijoins.size() > 0) {
 
 Review comment:
   Probably I am missing part of the mechanism to enable your optimization. It 
seems you are skipping the removal of SJ, so you are adding the context AND 
keeping those branches in the plan. Is the intention to keep both optimizations 
in these cases? Or is it because there is some dependency between them? I 
thought for MJ, the intention was to keep only your new optimization, that's 
maybe where my misunderstanding is coming from.

----------------------------------------------------------------
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]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to