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

Jason Rutherglen updated LUCENE-1314:
-------------------------------------

    Attachment: LUCENE-1314.patch

Mike, your patch solved the null pointer exception. An item of
concern is when deleteDocument is called on the sub-readers, the
write lock is not acquired, and it's not passed from the parent
MultiSegmentReader. In the new patch I close the subreaders
individually, then close the MultiSegmentReader. When opening the
index again the SegmentReader can't find the .del file. Perhaps we
javadoc the parameters of these types of cases or there's a fix.

{code}
java.io.FileNotFoundException: _b_1.del
        at 
org.apache.lucene.store.MockRAMDirectory.openInput(MockRAMDirectory.java:246)
        at org.apache.lucene.util.BitVector.<init>(BitVector.java:209)
        at 
org.apache.lucene.index.SegmentReader.loadDeletedDocs(SegmentReader.java:591)
        at 
org.apache.lucene.index.SegmentReader.initialize(SegmentReader.java:557)
        at org.apache.lucene.index.SegmentReader.get(SegmentReader.java:495)
        at org.apache.lucene.index.SegmentReader.get(SegmentReader.java:417)
        at 
org.apache.lucene.index.MultiSegmentReader.<init>(MultiSegmentReader.java:55)
        at 
org.apache.lucene.index.DirectoryIndexReader$1.doBody(DirectoryIndexReader.java:112)
        at 
org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:688)
        at 
org.apache.lucene.index.DirectoryIndexReader.open(DirectoryIndexReader.java:123)
        at org.apache.lucene.index.IndexReader.open(IndexReader.java:316)
        at org.apache.lucene.index.IndexReader.open(IndexReader.java:227)
        at 
org.apache.lucene.index.TestIndexReaderClone.testCloneSubreaders(TestIndexReaderClone.java:427)
{code}

> IndexReader.clone
> -----------------
>
>                 Key: LUCENE-1314
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1314
>             Project: Lucene - Java
>          Issue Type: New Feature
>          Components: Index
>    Affects Versions: 2.3.1
>            Reporter: Jason Rutherglen
>            Assignee: Michael McCandless
>            Priority: Minor
>             Fix For: 2.9
>
>         Attachments: LUCENE-1314.patch, LUCENE-1314.patch, LUCENE-1314.patch, 
> LUCENE-1314.patch, LUCENE-1314.patch, LUCENE-1314.patch, LUCENE-1314.patch, 
> LUCENE-1314.patch, LUCENE-1314.patch, LUCENE-1314.patch, LUCENE-1314.patch, 
> LUCENE-1314.patch, LUCENE-1314.patch, LUCENE-1314.patch, LUCENE-1314.patch, 
> LUCENE-1314.patch, LUCENE-1314.patch, LUCENE-1314.patch, LUCENE-1314.patch, 
> LUCENE-1314.patch, LUCENE-1314.patch, LUCENE-1314.patch, lucene-1314.patch, 
> lucene-1314.patch, lucene-1314.patch, lucene-1314.patch, lucene-1314.patch, 
> lucene-1314.patch, lucene-1314.patch, lucene-1314.patch, lucene-1314.patch, 
> lucene-1314.patch, lucene-1314.patch, lucene-1314.patch
>
>
> Based on discussion 
> http://www.nabble.com/IndexReader.reopen-issue-td18070256.html.  The problem 
> is reopen returns the same reader if there are no changes, so if docs are 
> deleted from the new reader, they are also reflected in the previous reader 
> which is not always desired behavior.

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


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-dev-h...@lucene.apache.org

Reply via email to