You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Vladimir Sitnikov (JIRA)" <ji...@apache.org> on 2018/09/20 12:16:00 UTC
[jira] [Updated] (CALCITE-2527) Simplify (c IS NULL) OR (c IS ...)
might result in AssertionError: result mismatch
[ https://issues.apache.org/jira/browse/CALCITE-2527?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vladimir Sitnikov updated CALCITE-2527:
---------------------------------------
Summary: Simplify (c IS NULL) OR (c IS ...) might result in AssertionError: result mismatch (was: Simplify OR with comparisons leads to AssertionError: result mismatch)
> Simplify (c IS NULL) OR (c IS ...) might result in AssertionError: result mismatch
> ----------------------------------------------------------------------------------
>
> Key: CALCITE-2527
> URL: https://issues.apache.org/jira/browse/CALCITE-2527
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.17.0
> Reporter: Vladimir Sitnikov
> Assignee: Julian Hyde
> Priority: Major
> Labels: newbie
> Fix For: 1.18.0
>
>
> {code:java}
> checkSimplify2(
> //OR(<=(?0.int0, null), IS NULL(?0.bool0), IS NOT FALSE(?0.bool0))
> or(le(vInt(), nullInt), isNull(vBool()), isNotFalse(vBool())),
> "...", "...");
> {code}
> {noformat}
> java.lang.AssertionError: result mismatch: when applied to {?0.int0=-1, ?0.bool0=true}, OR(<=(?0.int0, null), IS NULL(?0.bool0), IS NOT FALSE(?0.bool0)) yielded true, and OR(<=(?0.int0, null), IS NULL(?0.bool0)) yielded NULL
> at org.apache.calcite.rex.RexSimplify.verify(RexSimplify.java:1201)
> at org.apache.calcite.rex.RexSimplify.simplify(RexSimplify.java:175)
> at org.apache.calcite.test.RexProgramTest.checkSimplify2(RexProgramTest.java:150)
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)