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

Knut Anders Hatlen commented on DERBY-6735:
-------------------------------------------

Got the NPE too now:

{noformat}
ij> connect 'jdbc:derby:memory:db;create=true';
ij> create table t1(x int primary key);
0 rows inserted/updated/deleted
ij> select row_number() over (), (select x from t1 where x=1) from t1;
ERROR XJ001: Java exception: ': java.lang.NullPointerException'.
{noformat}

Stack trace:

{noformat}
Caused by: java.lang.NullPointerException
        at 
org.apache.derby.impl.sql.compile.BinaryRelationalOperatorNode.generateExpressionOperand(Unknown
 Source)
        at 
org.apache.derby.impl.sql.compile.Predicate.generateExpressionOperand(Unknown 
Source)
        at 
org.apache.derby.impl.sql.compile.PredicateList.generateSetColumn(Unknown 
Source)
        at 
org.apache.derby.impl.sql.compile.PredicateList.generateStartKey(Unknown Source)
        at 
org.apache.derby.impl.sql.compile.BaseJoinStrategy.fillInScanArgs1(Unknown 
Source)
        at 
org.apache.derby.impl.sql.compile.NestedLoopJoinStrategy.getScanArgs(Unknown 
Source)
        at 
org.apache.derby.impl.sql.compile.FromBaseTable.getScanArguments(Unknown Source)
        at 
org.apache.derby.impl.sql.compile.FromBaseTable.generateResultSet(Unknown 
Source)
        at org.apache.derby.impl.sql.compile.FromBaseTable.generate(Unknown 
Source)
        at 
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(Unknown 
Source)
        at 
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(Unknown Source)
        at 
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(Unknown 
Source)
        at 
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(Unknown Source)
        at 
org.apache.derby.impl.sql.compile.SubqueryNode.generateExpression(Unknown 
Source)
        at 
org.apache.derby.impl.sql.compile.ResultColumn.generateExpression(Unknown 
Source)
        at 
org.apache.derby.impl.sql.compile.ResultColumnList.generateEvaluatedRow(Unknown 
Source)
        at 
org.apache.derby.impl.sql.compile.ResultColumnList.generateCore(Unknown Source)
        at 
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(Unknown 
Source)
        at 
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(Unknown Source)
        at 
org.apache.derby.impl.sql.compile.ScrollInsensitiveResultSetNode.generate(Unknown
 Source)
        at org.apache.derby.impl.sql.compile.CursorNode.generate(Unknown Source)
        at org.apache.derby.impl.sql.compile.StatementNode.generate(Unknown 
Source)
        at org.apache.derby.impl.sql.GenericStatement.prepMinion(Unknown Source)
        at org.apache.derby.impl.sql.GenericStatement.prepare(Unknown Source)
        at 
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(Unknown
 Source)
        ... 11 more
{noformat}

Or with debug jars:

{noformat}
Caused by: org.apache.derby.shared.common.sanity.AssertFailure: ASSERT FAILED 
sourceResultSetNumber expected to be >= 0 for virtual column X
        at 
org.apache.derby.shared.common.sanity.SanityManager.ASSERT(SanityManager.java:120)
        at 
org.apache.derby.impl.sql.compile.VirtualColumnNode.generateExpression(VirtualColumnNode.java:232)
        at 
org.apache.derby.impl.sql.compile.ResultColumn.generateExpression(ResultColumn.java:1061)
        at 
org.apache.derby.impl.sql.compile.ResultColumnList.generateEvaluatedRow(ResultColumnList.java:1458)
        at 
org.apache.derby.impl.sql.compile.ResultColumnList.generateCore(ResultColumnList.java:1195)
        at 
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1539)
        at 
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1319)
        at 
org.apache.derby.impl.sql.compile.WindowResultSetNode.generate(WindowResultSetNode.java:355)
        at 
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1464)
        at 
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1319)
        at 
org.apache.derby.impl.sql.compile.ScrollInsensitiveResultSetNode.generate(ScrollInsensitiveResultSetNode.java:86)
        at 
org.apache.derby.impl.sql.compile.CursorNode.generate(CursorNode.java:640)
        at 
org.apache.derby.impl.sql.compile.StatementNode.generate(StatementNode.java:317)
        at 
org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:549)
        at 
org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:99)
        at 
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:1114)
        at 
org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:683)
{noformat}

> NPE in org.apache.derby.client.am.ClientStatement.completeSqlca
> ---------------------------------------------------------------
>
>                 Key: DERBY-6735
>                 URL: https://issues.apache.org/jira/browse/DERBY-6735
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.11.1.1
>         Environment: Windows 7 64Bit, Java8_20 64Bit
>            Reporter: Thomas Meyer
>
> When using row_number() over() in an SQL I get this exception:
> ERROR XJ001: DERBY SQL error: ERRORCODE: 0, SQLSTATE: XJ001, SQLERRMC: 
> java.lang.NullPointerException¶¶XJ001.U
> java.sql.SQLException: DERBY SQL error: ERRORCODE: 0, SQLSTATE: XJ001, 
> SQLERRMC: java.lang.NullPointerException¶¶XJ001.U
>         at 
> org.apache.derby.client.am.SQLExceptionFactory.getSQLException(Unknown Source)
>         at org.apache.derby.client.am.SqlException.getSQLException(Unknown 
> Source)
>         at org.apache.derby.client.am.ClientStatement.execute(Unknown Source)
>         at org.apache.derby.impl.tools.ij.ij.executeImmediate(Unknown Source)
>         at org.apache.derby.impl.tools.ij.utilMain.doCatch(Unknown Source)
>         at org.apache.derby.impl.tools.ij.utilMain.runScriptGuts(Unknown 
> Source)
>         at org.apache.derby.impl.tools.ij.utilMain.go(Unknown Source)
>         at org.apache.derby.impl.tools.ij.Main.go(Unknown Source)
>         at org.apache.derby.impl.tools.ij.Main.mainCore(Unknown Source)
>         at org.apache.derby.impl.tools.ij.Main.main(Unknown Source)
>         at org.apache.derby.tools.ij.main(Unknown Source)
> Caused by: ERROR XJ001: DERBY SQL error: ERRORCODE: 0, SQLSTATE: XJ001, 
> SQLERRMC: java.lang.NullPointerException¶¶XJ001.U
>         at org.apache.derby.client.am.ClientStatement.completeSqlca(Unknown 
> Source)
>         at 
> org.apache.derby.client.net.NetStatementReply.parsePrepareError(Unknown 
> Source)
>         at 
> org.apache.derby.client.net.NetStatementReply.parsePRPSQLSTTreply(Unknown 
> Source)
>         at 
> org.apache.derby.client.net.NetStatementReply.readPrepareDescribeOutput(Unknown
>  Source)
>         at 
> org.apache.derby.client.net.StatementReply.readPrepareDescribeOutput(Unknown 
> Source)
>         at 
> org.apache.derby.client.net.NetStatement.readPrepareDescribeOutput_(Unknown 
> Source)
>         at 
> org.apache.derby.client.am.ClientStatement.readPrepareDescribeOutput(Unknown 
> Source)
>         at org.apache.derby.client.am.ClientStatement.flowExecute(Unknown 
> Source)
>         at org.apache.derby.client.am.ClientStatement.executeX(Unknown Source)
>         ... 9 more
> ij>



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to