db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mike Matrigali (JIRA)" <derby-...@db.apache.org>
Subject [jira] Updated: (DERBY-1653) Database gets corrupt after throwing NPE while reading Binary Stream data, in chunks
Date Fri, 11 Aug 2006 15:18:14 GMT
     [ 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.available(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:44)
>         at com.irm.dag.occcalc.test.WrapperForOccurrenceCalculator.main(WrapperForOccurrenceCalculator.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

        

Mime
View raw message