You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Julian Hyde (JIRA)" <ji...@apache.org> on 2015/08/10 21:21:45 UTC

[jira] [Updated] (CALCITE-833) RelOptUtil.splitJoinCondition incorrectly splits a join condition

     [ https://issues.apache.org/jira/browse/CALCITE-833?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Hyde updated CALCITE-833:
--------------------------------
    Fix Version/s: 1.4.0-incubating

> RelOptUtil.splitJoinCondition incorrectly splits a join condition
> -----------------------------------------------------------------
>
>                 Key: CALCITE-833
>                 URL: https://issues.apache.org/jira/browse/CALCITE-833
>             Project: Calcite
>          Issue Type: Bug
>            Reporter: Sean Hsuan-Yi Chu
>            Assignee: Sean Hsuan-Yi Chu
>             Fix For: 1.4.0-incubating
>
>
> For a RelNode such as the following:
> {code}
> LogicalJoin(condition=[<>(CAST($0):INTEGER NOT NULL, $9)], joinType=[inner]): rowcount = 1.0, cumulative cost = 1.0, id = 7
>     LogicalTableScan(table=[[CATALOG, SALES, EMP]]): rowcount = 1.0, cumulative cost = 0.0, id = 5
>     LogicalTableScan(table=[[CATALOG, SALES, DEPT]]): rowcount = 1.0, cumulative cost = 0.0, id = 6
> {code}
> If RelOptUtil.splitJoinCondition is fed with this RelNode, the output will be:
> 1. Remaining Condition: true (i.e., no remaining condition)
> 2. LeftJoinKey: List of (<>(CAST($0):INTEGER NOT NULL, {color:red} $0{color:}), true)
> 3. RightJoinKey: Empty List
> (Note the index in the $ which is marked in red)
> However, isn't the expected output supposed to be ?
> 1. Remaining Condition: <>(CAST($0):INTEGER NOT NULL, $9)
> 2. LeftJoinKey: Empty List
> 3. RightJoinKey: Empty List



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