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] Updated: (DERBY-4873) NullPointerException in testBoundaries with ibm jvm 1.6
Date Fri, 29 Oct 2010 07:31:19 GMT

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

Knut Anders Hatlen updated DERBY-4873:
--------------------------------------

    Attachment: logMsg.diff

The NPE is raised at BaseDataFileFactory.java:471, which looks like this:

    istream.println(LINE);

I don't know why istream is null here with the IBM VM, but I think this line is buggy, or
at least not consistent with how printing to istream happens in the rest of the file. Normally,
the helper method logMsg() is used, which checks if istream is null before calling println(),
and initializes the field if necessary.

The attached patch logMsg.diff makes BaseDataFileFactory.stop() use the helper method too.
Committed revision 1028633.

This should at least take care of the NPE, but I don't know if it is enough to make the test
pass on that platform.

> NullPointerException in testBoundaries with ibm jvm 1.6 
> --------------------------------------------------------
>
>                 Key: DERBY-4873
>                 URL: https://issues.apache.org/jira/browse/DERBY-4873
>             Project: Derby
>          Issue Type: Bug
>          Components: Test
>    Affects Versions: 10.7.1.0
>         Environment: Windows XP with ibm jvm 1.6 SR8
>            Reporter: Myrna van Lunteren
>         Attachments: derby.log, logMsg.diff
>
>
> With the line skipping the testBoundaries fixture of the InternationalConnectTest commented
out, I get the following stack when I run the test with ibm 1.6:
> 1) testBoundaries(org.apache.derbyTesting.functionTests.tests.jdbcapi.InternationalConnectTest)java.sql.SQLException:
DERBY SQL error: SQLCODE: -1, SQLSTATE: XJ001, SQLERRMC: java.lang.NullPointerExceptionXJ001.U
> 	at org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(SQLExceptionFactory40.java:96)
> 	at org.apache.derby.client.am.SqlException.getSQLException(SqlException.java:358)
> 	at org.apache.derby.jdbc.ClientDriver.connect(ClientDriver.java:149)
> 	at java.sql.DriverManager.getConnection(DriverManager.java:322)
> 	at java.sql.DriverManager.getConnection(DriverManager.java:273)
> 	at org.apache.derbyTesting.functionTests.tests.jdbcapi.InternationalConnectTest.testBoundaries(InternationalConnectTest.java:111)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:109)
> 	at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
> 	at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
> 	at junit.extensions.TestSetup.run(TestSetup.java:23)
> 	at org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:57)
> 	at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
> 	at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
> 	at junit.extensions.TestSetup.run(TestSetup.java:23)
> 	at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
> 	at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
> 	at junit.extensions.TestSetup.run(TestSetup.java:23)
> 	at org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:57)
> Caused by: org.apache.derby.client.am.SqlException: DERBY SQL error: SQLCODE: -1, SQLSTATE:
XJ001, SQLERRMC: java.lang.NullPointerExceptionXJ001.U
> 	at org.apache.derby.client.am.Connection.completeSqlca(Connection.java:2117)
> 	at org.apache.derby.client.net.NetConnectionReply.parseRdbAccessFailed(NetConnectionReply.java:541)
> 	at org.apache.derby.client.net.NetConnectionReply.parseAccessRdbError(NetConnectionReply.java:434)
> 	at org.apache.derby.client.net.NetConnectionReply.parseACCRDBreply(NetConnectionReply.java:297)
> 	at org.apache.derby.client.net.NetConnectionReply.readAccessDatabase(NetConnectionReply.java:121)
> 	at org.apache.derby.client.net.NetConnection.readSecurityCheckAndAccessRdb(NetConnection.java:846)
> 	at org.apache.derby.client.net.NetConnection.flowSecurityCheckAndAccessRdb(NetConnection.java:769)
> 	at org.apache.derby.client.net.NetConnection.flowUSRIDONLconnect(NetConnection.java:601)
> 	at org.apache.derby.client.net.NetConnection.flowConnect(NetConnection.java:408)
> 	at org.apache.derby.client.net.NetConnection.<init>(NetConnection.java:218)
> 	at org.apache.derby.client.net.NetConnection40.<init>(NetConnection40.java:77)
> 	at org.apache.derby.client.net.ClientJDBCObjectFactoryImpl40.newNetConnection(ClientJDBCObjectFactoryImpl40.java:269)
> 	at org.apache.derby.jdbc.ClientDriver.connect(ClientDriver.java:140)
> 	... 35 more
> This is after the latest check in for DERBY-4836 (revision 1028035).
> I'll attach derby.log.

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


Mime
View raw message