You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Zoltan Haindrich (JIRA)" <ji...@apache.org> on 2019/02/13 16:36:00 UTC
[jira] [Updated] (CALCITE-2838) Simplification: Remove redundant IS
TRUE checks
[ https://issues.apache.org/jira/browse/CALCITE-2838?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Zoltan Haindrich updated CALCITE-2838:
--------------------------------------
Priority: Blocker (was: Major)
Fix Version/s: 1.19.0
because this could be interpreted as a regression - and may cause to generate less efficient plans; I would like to have this in the 1.19 release
https://reviews.apache.org/r/69918/#comment298475
> Simplification: Remove redundant IS TRUE checks
> -----------------------------------------------
>
> Key: CALCITE-2838
> URL: https://issues.apache.org/jira/browse/CALCITE-2838
> Project: Calcite
> Issue Type: Improvement
> Reporter: Zoltan Haindrich
> Assignee: Zoltan Haindrich
> Priority: Blocker
> Fix For: 1.19.0
>
>
> In case simplifcation is already processing in unknownAsFalse mode, {{expr IS TRUE}} is redundant - and may just prevent further optimizations from happening:
> {code}
> @Test public void testRedundantIsTrue() {
> // in case of unknownAsFalse
> // x is TRUE <=> x
> checkSimplify3(isTrue(vBool(1)),
> "IS TRUE(?0.bool1)",
> "?0.bool1",
> "IS TRUE(?0.bool1)");
> }
> {code}
> there are some further possibilities
> {code}
> (unknownAsTrue) x is NOT FALSE <=> x
> (unknownAsTrue) x is FALSE <=> not x
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)