HIVE-10864 : CBO (Calcite Return Path): auto_join2.q returning wrong results (Jesus Camacho Rodriguez via Ashutosh Chauhan)
Signed-off-by: Ashutosh Chauhan <hashut...@apache.org> Project: http://git-wip-us.apache.org/repos/asf/hive/repo Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/a9eaa204 Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/a9eaa204 Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/a9eaa204 Branch: refs/heads/hbase-metastore Commit: a9eaa2042eff0e4bbf27ba9ed3afc58fff43e89e Parents: 2b8d547 Author: Jesus Camacho Rodriguez <jcama...@apache.org> Authored: Thu May 28 11:26:00 2015 -0700 Committer: Ashutosh Chauhan <hashut...@apache.org> Committed: Mon Jun 1 11:40:43 2015 -0700 ---------------------------------------------------------------------- .../ql/optimizer/calcite/rules/HiveInsertExchange4JoinRule.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hive/blob/a9eaa204/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveInsertExchange4JoinRule.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveInsertExchange4JoinRule.java b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveInsertExchange4JoinRule.java index 30db8fd..11c3d23 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveInsertExchange4JoinRule.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveInsertExchange4JoinRule.java @@ -98,11 +98,11 @@ public class HiveInsertExchange4JoinRule extends RelOptRule { for (int j = 0; j < joinPredInfo.getEquiJoinPredicateElements().size(); j++) { JoinLeafPredicateInfo joinLeafPredInfo = joinPredInfo. getEquiJoinPredicateElements().get(j); + keyListBuilder.add(joinLeafPredInfo.getJoinKeyExprs(i).get(0)); for (int pos : joinLeafPredInfo.getProjsJoinKeysInChildSchema(i)) { if (!joinKeyPositions.contains(pos)) { joinKeyPositions.add(pos); collationListBuilder.add(new RelFieldCollation(pos)); - keyListBuilder.add(joinLeafPredInfo.getJoinKeyExprs(i).get(0)); } } }