You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Mamta A. Satoor (JIRA)" <ji...@apache.org> on 2014/09/16 22:28:34 UTC

[jira] [Created] (DERBY-6740) NullPointerException when inserting value into generated by default as identity using DEFAULT and specific value at the same time

Mamta A. Satoor created DERBY-6740:
--------------------------------------

             Summary: NullPointerException when inserting value into generated by default as identity using DEFAULT and specific value at the same time
                 Key: DERBY-6740
                 URL: https://issues.apache.org/jira/browse/DERBY-6740
             Project: Derby
          Issue Type: Bug
          Components: SQL
    Affects Versions: 10.10.1.1, 10.2.2.0
            Reporter: Mamta A. Satoor
            Priority: Minor


I came across following NPE in 10.1 and 10.2 while writing upgrade tests for DERBY-6414 in trunk(10.12 codeline). 

Basically, in 10.1 and 10,2, an insert into a table with generated by default as identity column works when user is trying to insert Default OR specific value. But trying to insert both the values within the same insert statement gives NPE. This behavior is only for 10.1 and 10.2. 

Version 10.0 did not support generated by default as identity columns. Version 10.3 and above do not give a NPE.

Since the NPE is in such old releases of Derby and they do not show themselves in 10.3 and higher, we probably don't care about this jira but I wanted to have a place holder for the behavior.
 
Following is the behavior in ij
ij>create table t2_6414(a int,c int generated by default as identity,d char(3),e char(5));
ij> 0 rows inserted/updated/deleted
ij>  insert into t2_6414(a,d,e,c) values(1,'aaa','aaaaa',1);
1 row inserted/updated/deleted
ij> insert into t2_6414(a,d,e,c) values(2,'bbb','bbbbb',default);
1 row inserted/updated/deleted
ij> insert into t2_6414(a,d,e,c) values(1,'aaa','aaaaa',1),(2,'bbb','bbbbb',default);
ERROR XJ001: Java exception: ': java.lang.NullPointerException'.
java.lang.NullPointerException
        at org.apache.derby.impl.sql.compile.ResultColumnList.generateCore(ResultColumnList.java:1113)
        at org.apache.derby.impl.sql.compile.ResultColumnList.generate(ResultColumnList.java:973)
        at org.apache.derby.impl.sql.compile.RowResultSetNode.generate(RowResultSetNode.java:691)
        at org.apache.derby.impl.sql.compile.UnionNode.generate(UnionNode.java:603)
        at org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1441)
        at org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1303)
        at org.apache.derby.impl.sql.compile.NormalizeResultSetNode.generate(NormalizeResultSetNode.java:123)
        at org.apache.derby.impl.sql.compile.InsertNode.generate(InsertNode.java:773)
        at org.apache.derby.impl.sql.compile.StatementNode.generate(StatementNode.java:233)
        at org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:478)
        at org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:119)
        at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:745)
        at org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:568)
        at org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:517)
        at org.apache.derby.impl.tools.ij.ij.executeImmediate(ij.java:323)
        at org.apache.derby.impl.tools.ij.utilMain.doCatch(utilMain.java:529)
        at org.apache.derby.impl.tools.ij.utilMain.runScriptGuts(utilMain.java:371)
        at org.apache.derby.impl.tools.ij.utilMain.go(utilMain.java:269)
        at org.apache.derby.impl.tools.ij.Main.go(Main.java:204)
        at org.apache.derby.impl.tools.ij.Main.mainCore(Main.java:170)
        at org.apache.derby.impl.tools.ij.Main14.main(Main14.java:56)
        at org.apache.derby.tools.ij.main(ij.java:71)




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