You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Jesus Camacho Rodriguez (JIRA)" <ji...@apache.org> on 2015/11/05 09:15:27 UTC

[jira] [Created] (HIVE-12344) Wrong types inferred for SemiJoin generation in CBO

Jesus Camacho Rodriguez created HIVE-12344:
----------------------------------------------

             Summary: Wrong types inferred for SemiJoin generation in CBO
                 Key: HIVE-12344
                 URL: https://issues.apache.org/jira/browse/HIVE-12344
             Project: Hive
          Issue Type: Bug
          Components: CBO
    Affects Versions: 1.3.0, 2.0.0
            Reporter: Jesus Camacho Rodriguez
            Assignee: Jesus Camacho Rodriguez


The method {{projectNonColumnEquiConditions}} in HiveCalciteUtil will assign the type wrongly for newly created conditions. The problem is in this block:

{noformat}
      RexNode cond = rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
          rexBuilder.makeInputRef(newLeftFields.get(i).getType(), newLeftOffset + i),
          rexBuilder.makeInputRef(newLeftFields.get(i).getType(), newRightOffset + i));
{noformat}

It looks like a code copy-paste mistake. In addition, index {{i}} is incorrect, as newLeftFields contains all the fields, not only the ones of the new condition.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)