Kirill Kim created CALCITE-5632:
-----------------------------------

             Summary: Query with ORDER BY and null values NullPointer exception
                 Key: CALCITE-5632
                 URL: https://issues.apache.org/jira/browse/CALCITE-5632
             Project: Calcite
          Issue Type: Bug
          Components: core
    Affects Versions: 1.34.0
            Reporter: Kirill Kim


I try to perform query over over some table data in Java using Calcite. I try 
to execute query:
{code:java}
select distinct tbl.col1 , tbl.col2 from infoset.SUBEKT tbl order by col1 asc 
nulls last , col2 asc nulls last{code}
And the following exception occurs
{code:java}
java.lang.NullPointerException at 
org.apache.calcite.runtime.Utilities.compare(Utilities.java:202) at 
Baz$2.compare(ANONYMOUS.java:15) at Baz$2.compare(ANONYMOUS.java:27) at 
java.util.TreeMap.getEntryUsingComparator(TreeMap.java:376) at 
java.util.TreeMap.getEntry(TreeMap.java:345) at 
java.util.TreeMap.get(TreeMap.java:278) at 
org.apache.calcite.linq4j.EnumerableDefaults.toLookup_(EnumerableDefaults.java:3608)
 at 
org.apache.calcite.linq4j.EnumerableDefaults$14.enumerator(EnumerableDefaults.java:2660)
 at 
org.apache.calcite.linq4j.AbstractEnumerable.iterator(AbstractEnumerable.java:33)
 at org.apache.calcite.avatica.MetaImpl.createCursor(MetaImpl.java:90) at 
org.apache.calcite.avatica.AvaticaResultSet.execute(AvaticaResultSet.java:186) 
at org.apache.calcite.jdbc.CalciteResultSet.execute(CalciteResultSet.java:64) 
at org.apache.calcite.jdbc.CalciteResultSet.execute(CalciteResultSet.java:43) 
at 
org.apache.calcite.avatica.AvaticaConnection$1.execute(AvaticaConnection.java:669)
 at 
org.apache.calcite.jdbc.CalciteMetaImpl.prepareAndExecute(CalciteMetaImpl.java:636)
 at 
org.apache.calcite.avatica.AvaticaConnection.prepareAndExecuteInternal(AvaticaConnection.java:677)
 at 
org.apache.calcite.avatica.AvaticaStatement.executeInternal(AvaticaStatement.java:157)
 at 
org.apache.calcite.avatica.AvaticaStatement.executeQuery(AvaticaStatement.java:228)
 at 
ru.spi2.modules.infosetquery.InfosetQueryPlugin.executeQuery(InfosetQueryPlugin.java:101)
 {code}
The error occurs because col1 has some rows with null values. If I order only 
by col1 or col2, all works well.



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

Reply via email to