[ https://issues.apache.org/jira/browse/HIVE-12344?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jesus Camacho Rodriguez updated HIVE-12344: ------------------------------------------- Affects Version/s: 0.14.0 1.0.0 1.2.0 1.1.0 1.0.1 1.1.1 1.2.1 > 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: 0.14.0, 1.0.0, 1.2.0, 1.1.0, 1.0.1, 1.1.1, 1.3.0, 1.2.1, > 2.0.0 > Reporter: Jesus Camacho Rodriguez > Assignee: Jesus Camacho Rodriguez > Fix For: 0.14.1, 1.3.0, 2.0.0, 1.0.2, 1.2.2, 1.1.2 > > Attachments: HIVE-12344.patch > > > 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)