[ 
https://issues.apache.org/jira/browse/LUCENE-1453?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12717761#action_12717761
 ] 

Uwe Schindler commented on LUCENE-1453:
---------------------------------------

Only two discussion points (the first one came up during an IRC chat with 
Earwin):
- If DirectoryReader.close() throws an Exception, should the directory still be 
closed for cleanup? This is implemented exactly that way using a try...finally 
block in DirectoryOwningIndexReader.doClose(). The old DirectoryReader was 
different, with all its bugs.
- Should I factor out DirectoryOwningIndexReader (any better name?) into a 
separate java file to not overload the already very big IndexReader.java? With 
3.0, we could simply remove this class file (because already deprecated)  
together with String/File open() .

> When reopen returns a new IndexReader, both IndexReaders may now control the 
> lifecycle of the underlying Directory which is managed by reference counting
> ---------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: LUCENE-1453
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1453
>             Project: Lucene - Java
>          Issue Type: Bug
>    Affects Versions: 2.4
>            Reporter: Mark Miller
>            Assignee: Michael McCandless
>            Priority: Minor
>             Fix For: 2.4.1, 2.9
>
>         Attachments: Failing-testcase-LUCENE-1453.patch, 
> LUCENE-1453-with-FSDir-open.patch, LUCENE-1453.patch, LUCENE-1453.patch, 
> LUCENE-1453.patch, LUCENE-1453.patch
>
>
> Rough summary. Basically, FSDirectory tracks references to FSDirectory and 
> when IndexReader.reopen shares a Directory with a created IndexReader and 
> closeDirectory is true, FSDirectory's ref management will see two decrements 
> for one increment. You can end up getting an AlreadyClosed exception on the 
> Directory when the IndexReader is open.
> I have a test I'll put up. A solution seems fairly straightforward (at least 
> in what needs to be accomplished).

-- 
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