You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Ayush Saxena (Jira)" <ji...@apache.org> on 2023/02/10 22:23:00 UTC

[jira] [Commented] (HIVE-27070) Multiple is NULL check together fails in CalcitePlanner

    [ https://issues.apache.org/jira/browse/HIVE-27070?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17687305#comment-17687305 ] 

Ayush Saxena commented on HIVE-27070:
-------------------------------------

Have attached a repro.patch, which has a q file which can be used to reproduce the issue.
{noformat}
 mvn clean install -Dtest=TestMiniLlapLocalCliDriver -Dqfile=is_null.q -Pitests  -Dtest.output.overwrite=true{noformat}

> Multiple is NULL check together fails in CalcitePlanner
> -------------------------------------------------------
>
>                 Key: HIVE-27070
>                 URL: https://issues.apache.org/jira/browse/HIVE-27070
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Ayush Saxena
>            Priority: Major
>         Attachments: repro.patch
>
>
> Steps to Repro:
> {noformat}
> create external table ice01 (id int, name string);
> select (name is null) is NULL from ice01;{noformat}
> Exception:
> {noformat}
> Caused by: java.lang.AssertionError
>         at org.apache.calcite.rex.RexSimplify.validateStrongPolicy(RexSimplify.java:851)
>         at org.apache.calcite.rex.RexSimplify.simplifyIs2(RexSimplify.java:695)
>         at org.apache.calcite.rex.RexSimplify.simplifyIs(RexSimplify.java:666)
>         at org.apache.calcite.rex.RexSimplify.simplify(RexSimplify.java:286)
>         at org.apache.calcite.rex.RexSimplify.simplifyUnknownAs(RexSimplify.java:236)
>         at org.apache.calcite.rex.RexSimplify.simplifyPreservingType(RexSimplify.java:175)
>         at org.apache.calcite.rex.RexSimplify.simplifyPreservingType(RexSimplify.java:170)
>         at org.apache.calcite.tools.RelBuilder.project_(RelBuilder.java:1415)
>         at org.apache.calcite.tools.RelBuilder.project_(RelBuilder.java:1409)
>         at org.apache.calcite.tools.RelBuilder.project(RelBuilder.java:1269)
>         at org.apache.calcite.tools.RelBuilder.project(RelBuilder.java:1241)
>         at org.apache.hadoop.hive.ql.optimizer.calcite.rules.RelFieldTrimmer.trimFields(RelFieldTrimmer.java:421)
>         at org.apache.hadoop.hive.ql.optimizer.calcite.rules.HiveRelFieldTrimmer.trimFields(HiveRelFieldTrimmer.java:759)
>         at org.apache.hadoop.hive.ql.optimizer.calcite.rules.HiveReflectUtil$VarArgsFunc4.apply(HiveReflectUtil.java:322)
>         at org.apache.hadoop.hive.ql.optimizer.calcite.rules.HiveReflectUtil$HiveMethodDispatcher.invoke(HiveReflectUtil.java:221)
>         at org.apache.hadoop.hive.ql.optimizer.calcite.rules.RelFieldTrimmer.dispatchTrimFields(RelFieldTrimmer.java:275)
>         at org.apache.hadoop.hive.ql.optimizer.calcite.rules.RelFieldTrimmer.trim(RelFieldTrimmer.java:159)
>         at org.apache.hadoop.hive.ql.optimizer.calcite.rules.HiveRelFieldTrimmer.trim(HiveRelFieldTrimmer.java:164)
>         at org.apache.hadoop.hive.ql.parse.CalcitePlanner$CalcitePlannerAction.apply(CalcitePlanner.java:1678)
>         at org.apache.hadoop.hive.ql.parse.CalcitePlanner$CalcitePlannerAction.apply(CalcitePlanner.java:1590)
>         at org.apache.calcite.tools.Frameworks.lambda$withPlanner$0(Frameworks.java:131)
>         at org.apache.calcite.prepare.CalcitePrepareImpl.perform(CalcitePrepareImpl.java:914)
>         at org.apache.calcite.tools.Frameworks.withPrepare(Frameworks.java:180)
>         at org.apache.calcite.tools.Frameworks.withPlanner(Frameworks.java:126)
>         at org.apache.hadoop.hive.ql.parse.CalcitePlanner.logicalPlan(CalcitePlanner.java:1342)
>  {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)