Pavel Pereslegin created IGNITE-26471:
-----------------------------------------

             Summary: Sql. NPE when creating range multi-bounds on a hash index
                 Key: IGNITE-26471
                 URL: https://issues.apache.org/jira/browse/IGNITE-26471
             Project: Ignite
          Issue Type: Bug
          Components: sql ai3
            Reporter: Pavel Pereslegin


Reproducer
{code:java}
        sql("CREATE TABLE X(ID INT PRIMARY KEY);");
        sql("SELECT /*+ FORCE_INDEX('X_PK') */ * FROM x WHERE id < 10 OR id > 
15;");
{code}

{noformat}
Caused by: java.lang.NullPointerException
        at 
org.apache.ignite.internal.sql.engine.util.RexUtils.lambda$buildSearchBounds$2(RexUtils.java:473)
        at 
java.base/java.util.stream.MatchOps$1MatchSink.accept(MatchOps.java:90)
        at 
java.base/java.util.ArrayList$ArrayListSpliterator.tryAdvance(ArrayList.java:1632)
        at 
java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
        at 
java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502)
        at 
java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488)
        at 
java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
        at 
java.base/java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:230)
        at 
java.base/java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:196)
        at 
java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at 
java.base/java.util.stream.ReferencePipeline.anyMatch(ReferencePipeline.java:528)
        at 
org.apache.ignite.internal.sql.engine.util.RexUtils.buildSearchBounds(RexUtils.java:473)
        at 
org.apache.ignite.internal.sql.engine.util.RexUtils.buildHashSearchBounds(RexUtils.java:328)
        at 
org.apache.ignite.internal.sql.engine.rule.TableScanToKeyValueGetRule.deriveSearchBounds(TableScanToKeyValueGetRule.java:179)
        at 
org.apache.ignite.internal.sql.engine.rule.TableScanToKeyValueGetRule.analyzeCondition(TableScanToKeyValueGetRule.java:102)
        at 
org.apache.ignite.internal.sql.engine.rule.TableScanToKeyValueGetRule.onMatch(TableScanToKeyValueGetRule.java:78)
{noformat}



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

Reply via email to