db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Glenn McGregor (JIRA)" <j...@apache.org>
Subject [jira] [Created] (DERBY-6373) NPE in Statement.getWarnings()
Date Fri, 04 Oct 2013 20:15:41 GMT
Glenn McGregor created DERBY-6373:

             Summary: NPE in Statement.getWarnings()
                 Key: DERBY-6373
                 URL: https://issues.apache.org/jira/browse/DERBY-6373
             Project: Derby
          Issue Type: Bug
    Affects Versions:
         Environment: JDK 7
            Reporter: Glenn McGregor
            Priority: Minor

After executing a batch in a prepared statement, I call getWarnings() on that statement. A
NPE is thrown.

	at org.apache.derby.client.am.SqlWarning.getSQLWarning(SqlWarning.java:117)
	at org.apache.derby.client.am.Statement.getWarnings(Statement.java:862)

Addtional info:

In a unit test, which worked for, a batch of 4 deletes were issued.
They were expected to fail, as there were no matching rows. There was a SQLWarning chain in
the statement, 4 deep, one for each row that failed 
with text:

No row was found for FETCH, UPDATE or DELETE; or the result of a query is an empty table.

However, each warning had 'nextException_' null. When attempting to chain on the exceptions
when building the warning, a NPE is thrown.

Perhaps something like changing line 105 of SqlWarning.java to

if ( nextWarning_ != null && nextException_ != null )

Of course perhaps there's always supposed to be a corresponding exception.

This message was sent by Atlassian JIRA

View raw message