Hi Mike, Thanks for you reply. Yes, "whole dB gets corrupt" means that I can no longer access the DB. We tried with a new JVM and it was still not accessible. Unfortunately, we deleted that DB and hence, do not have log file of derby.
Currently, we are busy with a major release and hence, wouldn't find time and/or a spare machine to reproduce the problem. Will try that next week and update Derby Bug DB, with more findings. Thank you again, for responding back. Regards, Dipali Sunkersett Symphony Services [EMAIL PROTECTED] -----Original Message----- From: Mike Matrigali (JIRA) [mailto:[EMAIL PROTECTED] Sent: Friday, August 11, 2006 8:48 PM To: Dipali Sunkersett Subject: [jira] Updated: (DERBY-1653) Database gets corrupt after throwingNPE while reading Binary Stream data, in chunks [ http://issues.apache.org/jira/browse/DERBY-1653?page=all ] Mike Matrigali updated DERBY-1653: ---------------------------------- We could really use some more information about this report. Could you define what you mean when you say the "whole DB gets corrupt"? Does it mean you can no longer access the db in the current application,, if so what happens if you shut down, start a new jvm and try to access it.? This has the feel of a stream getting closed because a non hold cursor and commit by a different statement affecting the open cursor in a way the application is not expecting. Getting a NPE is bad, but it is critical if this error causes the db to not be able to be rebooted. > Database gets corrupt after throwing NPE while reading Binary Stream data, in chunks > ------------------------------------------------------------------------ ------------ > > Key: DERBY-1653 > URL: http://issues.apache.org/jira/browse/DERBY-1653 > Project: Derby > Issue Type: Bug > Components: Store > Affects Versions: 10.1.3.1 > Environment: Linux (Debian) Kernel 2.6.16 > Reporter: Dipali Sunkersett > Priority: Critical > > One of the component of our project pushes large text (as a binary stream) into Derby DB. The other component retrieves these texts in chunks and process one text at a time to perform some manipulation. After fetching and processing roughly 30K texts, we get an NPE and the whole DB gets corrupt after that. We can not connect to that DB again. We use the "org.apache.derby.jdbc.EmbeddedDriver" for connecton. The stack trace is as below: > java.lang.NullPointerException > at org.apache.derby.impl.store.raw.data.BasePage.releaseExclusive(Unknown Source) > at org.apache.derby.impl.store.raw.data.CachedPage.releaseExclusive(Unknown Source) > at org.apache.derby.impl.store.raw.data.StoredPage.releaseExclusive(Unknown Source) > at org.apache.derby.impl.store.raw.data.BasePage.unlatch(Unknown Source) > at org.apache.derby.impl.store.raw.data.OverflowInputStream.fillByteHolder( Unknown Source) > at org.apache.derby.impl.store.raw.data.BufferedByteHolderInputStream.avail able(Unknown Source) > at java.io.FilterInputStream.available(FilterInputStream.java:146) > at java.io.FilterInputStream.available(FilterInputStream.java:146) > at sun.nio.cs.StreamDecoder$CharsetSD.inReady(StreamDecoder.java:490) > at sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:451) > at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183) > at java.io.InputStreamReader.read(InputStreamReader.java:167) > at java.io.BufferedReader.fill(BufferedReader.java:136) > at java.io.BufferedReader.readLine(BufferedReader.java:299) > at java.io.BufferedReader.readLine(BufferedReader.java:362) > at com.irm.dag.occcalc.command.CorpusWordPhraseOccCalc.calculateOccurrences (CorpusWordPhraseOccCalc.java:128) > at com.irm.dag.occcalc.command.CorpusOccCalc.calculate(CorpusOccCalc.java:4 4) > at com.irm.dag.occcalc.test.WrapperForOccurrenceCalculator.main(WrapperForO ccurrenceCalculator.java:56) -- 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
