scarlin-cloudera commented on a change in pull request #812: Hive 22324
URL: https://github.com/apache/hive/pull/812#discussion_r338626018
 
 

 ##########
 File path: 
ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveJoinConstraintsRule.java
 ##########
 @@ -117,7 +117,7 @@ public void onMatch(RelOptRuleCall call) {
     // These boolean values represent corresponding left, right input which is 
potential FK
     boolean leftInputPotentialFK = topRefs.intersects(leftBits);
     boolean rightInputPotentialFK = topRefs.intersects(rightBits);
-    if (leftInputPotentialFK && rightInputPotentialFK && joinType == 
JoinRelType.INNER) {
+    if (leftInputPotentialFK && rightInputPotentialFK && (joinType == 
JoinRelType.INNER || joinType == JoinRelType.SEMI)) {
 
 Review comment:
   We'll need to go over this one.  I think the logic here matches the previous 
logic since as you mention, the restriction is on Join and not HiveJoin.  This 
means that anything that has joinType of INNER applies to the new SEMI type.  
   
   So either the rule is supposed to handle semijoins fine or we have a bug.  
Will talk with you offline about this. 

----------------------------------------------------------------
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:
us...@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: gitbox-unsubscr...@hive.apache.org
For additional commands, e-mail: gitbox-h...@hive.apache.org

Reply via email to