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/02/08 09:56:45 UTC

[jira] [Closed] (CALCITE-448) FilterIntoJoinRule creates filters containing invalid RexInputRef

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

Julian Hyde closed CALCITE-448.
-------------------------------

Closing now that 1.0.0-incubating has been released.

> FilterIntoJoinRule creates filters containing invalid RexInputRef
> -----------------------------------------------------------------
>
>                 Key: CALCITE-448
>                 URL: https://issues.apache.org/jira/browse/CALCITE-448
>             Project: Calcite
>          Issue Type: Bug
>    Affects Versions: 0.9.2-incubating
>            Reporter: Ashutosh Chauhan
>            Assignee: Julian Hyde
>             Fix For: 1.0.0-incubating
>
>
> Filter should be allowed to be constructed even when types are {{INTEGER}} && {{INTEGER NOT NULL}} respectively. Currently, it fails with :
> {code}
>  java.lang.AssertionError: type mismatch:
> type1:
> INTEGER NOT NULL
> type2:
> INTEGER
> 	at org.eigenbase.relopt.RelOptUtil.eq(RelOptUtil.java:1566)
> 	at org.eigenbase.rex.RexProgramBuilder$RegisterInputShuttle.visitInputRef(RexProgramBuilder.java:899)
> 	at org.eigenbase.rex.RexProgramBuilder$RegisterInputShuttle.visitInputRef(RexProgramBuilder.java:878)
> 	at org.eigenbase.rex.RexInputRef.accept(RexInputRef.java:102)
> 	at org.eigenbase.rex.RexShuttle.visitList(RexShuttle.java:129)
> 	at org.eigenbase.rex.RexShuttle.visitCall(RexShuttle.java:78)
> 	at org.eigenbase.rex.RexProgramBuilder$RegisterShuttle.visitCall(RexProgramBuilder.java:843)
> 	at org.eigenbase.rex.RexProgramBuilder$RegisterShuttle.visitCall(RexProgramBuilder.java:841)
> 	at org.eigenbase.rex.RexCall.accept(RexCall.java:105)
> 	at org.eigenbase.rex.RexProgramBuilder.registerInput(RexProgramBuilder.java:272)
> 	at org.eigenbase.rex.RexProgramBuilder.addCondition(RexProgramBuilder.java:247)
> 	at org.eigenbase.relopt.RelOptUtil.pushFilterPastProject(RelOptUtil.java:2367)
> 	at org.eigenbase.rel.rules.PushFilterPastProjectRule.onMatch(PushFilterPastProjectRule.java:80)
> 	at org.eigenbase.relopt.AbstractRelOptPlanner.fireRule(AbstractRelOptPlanner.java:321)
> 	at org.eigenbase.relopt.hep.HepPlanner.applyRule(HepPlanner.java:488)
> 	at org.eigenbase.relopt.hep.HepPlanner.applyRules(HepPlanner.java:365)
> 	at org.eigenbase.relopt.hep.HepPlanner.executeInstruction(HepPlanner.java:258)
> 	at org.eigenbase.relopt.hep.HepInstruction$RuleCollection.execute(HepInstruction.java:68)
> 	at org.eigenbase.relopt.hep.HepPlanner.executeProgram(HepPlanner.java:179)
> 	at org.eigenbase.relopt.hep.HepPlanner.findBestExp(HepPlanner.java:166)
> {code}



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