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 "Rick Hillegas (JIRA)" <ji...@apache.org> on 2013/06/14 19:34:21 UTC

[jira] [Closed] (DERBY-4779) NPE while inserting into a table which has a generated column and an insert trigger

     [ https://issues.apache.org/jira/browse/DERBY-4779?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rick Hillegas closed DERBY-4779.
--------------------------------

    
> NPE while inserting into a table which has a generated column and an insert trigger
> -----------------------------------------------------------------------------------
>
>                 Key: DERBY-4779
>                 URL: https://issues.apache.org/jira/browse/DERBY-4779
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.5.3.0, 10.6.1.0, 10.7.1.1
>            Reporter: Rick Hillegas
>            Assignee: Siddharth Srivastava
>              Labels: derby_triage10_8
>             Fix For: 10.5.3.2, 10.6.2.3, 10.7.1.4, 10.8.2.2, 10.9.1.0
>
>         Attachments: d4779.diff, d4779.diff, derby-4779_10_5_diff.txt, test1.diff, testreport.txt
>
>
> The following script generates an NPE on the concluding insert:
> connect 'jdbc:derby:memory:dummy;create=true';
> create function getRegion( v int )
> returns varchar( 20 )
> language java parameter style java deterministic no sql
> external name 'java.lang.Integer.toString'
> ;
> create table orders
> (
>     orderID bigint primary key,
>     salesPrice int not null,
>     region generated always as ( getRegion( salesPrice ) )
> )
> ;
> create table dummy( a int );
> create trigger newOrderTrigger
> after insert on orders
> for each row
> insert into dummy( a ) values ( 1 )
> ;
> insert into orders( orderID, salesPrice ) values ( 1, 2 )
> ;
> ------------------------
> Here is the NPE:
> java.lang.NullPointerException
> 	at org.apache.derby.impl.sql.execute.DMLWriteResultSet.objectifyStreams(Unknown Source)
> 	at org.apache.derby.impl.sql.execute.DMLWriteResultSet.getNextRowCore(Unknown Source)
> 	at org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown Source)
> 	at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(Unknown Source)
> 	at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedStatement.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)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira