db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Knut Anders Hatlen (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DERBY-3513) NullPointerException in newBrokeredStatement in app server environment
Date Wed, 12 Mar 2008 10:44:46 GMT

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

Knut Anders Hatlen commented on DERBY-3513:

Wouldn't it be better to remove the jdbcLevel field from BrokeredStatement completely? Then
we don't need the call to getJDBCLevel() in those methods at all. The only use of the jdbcLevel
field I could find, was this statement in BrokeredStatement.createDuplicateStatement():

		if (jdbcLevel == 2)
			newStatement = conn.createStatement(resultSetType, resultSetConcurrency);
			newStatement = conn.createStatement(resultSetType, resultSetConcurrency,

Since BrokeredConnection.getJDBCLevel() never returns 2, it is not needed any more.

> NullPointerException in newBrokeredStatement in app server environment
> ----------------------------------------------------------------------
>                 Key: DERBY-3513
>                 URL: https://issues.apache.org/jira/browse/DERBY-3513
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC
>    Affects Versions:
>         Environment: Java Version:    1.5.0
> Java Vendor:     IBM Corporation
> OS name:         Linux
> OS architecture: x86
> OS version:      2.6.9-55.ELsmp
>            Reporter: Kathey Marsden
>         Attachments: derby-3513_diff.txt
> User reports in an app server environment an intermittent  NullPointerException
> with the 10.1 trace:
>  R java.lang.NullPointerException
> org.apache.derby.iapi.jdbc.BrokeredConnection.newBrokeredStatement(BrokeredConnection.java:448)
> ...org.apache.derby.jdbc.XAStatementControl.<init>(XAStatementControl.java:62)
> ...org.apache.derby.jdbc.EmbedXAConnection.wrapStatement(EmbedXAConnection.java:827)
> org.apache.derby.iapi.jdbc.BrokeredConnection.createStatement(BrokeredConnection.java:296)
>  [snip user trace]
> The code at line 448 is simply:
> return new BrokeredStatement(statementControl, getJDBCLevel());
> so not much room for an NPE there.   I added println statements to identify the state
values and where the NPE is actually occurring but that seemed to make the 
> problem go away.  It may be a JIT issue.
> I gave them the fix for DERBY-2142 and that did not correct the problem.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message