[ http://issues.apache.org/jira/browse/DERBY-265?page=all ] Sunitha Kambhampati closed DERBY-265: -------------------------------------
> In Network Server retrieving BLOB values with autocommit off causes > NullPointerException in INSANE build / AssertFailure in in > BaseContainerHandle.getTransaction in SANE Build > ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > > Key: DERBY-265 > URL: http://issues.apache.org/jira/browse/DERBY-265 > Project: Derby > Type: Bug > Components: Network Server > Versions: 10.1.0.0 > Reporter: Kathey Marsden > Assignee: Sunitha Kambhampati > Fix For: 10.1.0.0 > Attachments: MsgNpe.java, MsgNpe2.java > > problem when retreiving rows with BLOB > values with network server with autocommit on. The workaround > was to turn autocommit off. The Problem manifested itself with > this trace but there was an underlying NPE in the > derby.log > java.lang.NullPointerException > at com.ibm.db2.jcc.c.md.a(md.java:289) > at > com.ibm.db2.jcc.c.SqlException.getMessage(SqlException.java:194) > at > java.lang.Throwable.getLocalizedMessage(Throwable.java:266) > at java.lang.Throwable.toString(Throwable.java:343) > at java.lang.String.valueOf(String.java:2131) > at java.io.PrintStream.print(PrintStream.java:462) > at java.io.PrintStream.println(PrintStream.java:599) > at java.lang.Throwable.printStackTrace(Throwable.java:461) > at java.lang.Throwable.printStackTrace(Throwable.java:451) > at temp.CloudscapeTest.<init>(CloudscapeTest.java:28) > at temp.CloudscapeTest.main(CloudscapeTest.java:92) > When run with a SANE Build with the attached repro, the > derby.log shows this trace. > }), Committing > 2005-02-08 21:19:45.626 GMT Thread[DRDAConnThread_2,5,main] > (XID = 2845), (SESSIONID = 1), (DATABASE = toursDB), (DRDAID = > NF000001.G838-866941820371235014{10}), Executing prepared > statement: SELECT "MAP_ID", "MAP_NAME", "REGION", "AREA", > "PHOTO_FORMAT", "PICTURE" FROM "MAPS" :End prepared statement > 2005-02-08 21:19:45.686 GMT Thread[DRDAConnThread_2,5,main] > (XID = 2845), (SESSIONID = 1), (DATABASE = toursDB), (DRDAID = > NF000001.G838-866941820371235014{10}), Executing prepared > statement: SELECT "MAP_ID", "MAP_NAME", "REGION", "AREA", > "PHOTO_FORMAT", "PICTURE" FROM "MAPS" :End prepared statement > 2005-02-08 21:19:45.726 GMT Thread[DRDAConnThread_2,5,main] > (XID = 2845), (SESSIONID = 1), (DATABASE = toursDB), (DRDAID = > NF000001.G838-866941820371235014{10}), Committing > 2005-02-08 21:19:45.726 GMT Thread[DRDAConnThread_2,5,main] > (XID = 2845), (SESSIONID = 1), (DATABASE = toursDB), (DRDAID = > NF000001.G838-866941820371235014{10}), Cleanup action starting > 2005-02-08 21:19:45.726 GMT Thread[DRDAConnThread_2,5,main] > (XID = 2845), (SESSIONID = 1), (DATABASE = toursDB), (DRDAID = > NF000001.G838-866941820371235014{10}), Failed Statement is: > null > org.apache.derby.iapi.services.sanity.AssertFailure: ASSERT > FAILED > at > org.apache.derby.iapi.services.sanity.SanityManager.ASSERT(Sanit > yManager.java:99) > at > org.apache.derby.impl.store.raw.data.BaseContainerHandle.getTran > saction(BaseContainerHandle.java:830) > at > org.apache.derby.impl.store.raw.data.OverflowInputStream.initStr > eam(OverflowInputStream.java:158) > at > org.apache.derby.iapi.services.io.FormatIdInputStream.initStream > (FormatIdInputStream.java:226) > at > org.apache.derby.impl.jdbc.EmbedBlob.<init>(EmbedBlob.java:12 > 8) > at > org.apache.derby.impl.jdbc.EmbedResultSet20.getBlob(EmbedResultS > et20.java:1552) > at > org.apache.derby.impl.drda.DRDAConnThread.writeFDODTA(DRDAConnTh > read.java:5871) > at > org.apache.derby.impl.drda.DRDAConnThread.writeQRYDTA(DRDAConnTh > read.java:5754) > at > org.apache.derby.impl.drda.DRDAConnThread.processCommands(DRDACo > nnThread.java:595) > at > org.apache.derby.impl.drda.DRDAConnThread.run(DRDAConnThread.jav > a:226) > It seems that network server is somehow closing the resultset > or committing too early. This problem may be related to DERBY-213 > There seem to be some scenario in which Store throws this > ASSERTION instead of the proper user error if the blob is > accessed outside of the transaction, but we don't have a repro > outside of network server right now. > This occurred with JCC 2.4. I have not tried it with derby client -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
