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

Michael McCandless commented on LUCENE-1707:
--------------------------------------------

bq. So I'm not sure closed can be used.

Woops, sorry closed cannot be used: it simply reflects whether the referrer who 
had opened the reader, has closed it.  So even once they've closed it, the 
reader can stibe open because others are holding references.  We need a 
separate member that's set as soon as refCount hits 0.

bq. If you call decRef() and then close(), it'll be wrong? I think the solution 
is to set closed = true in decRef() after doClose() has returned?

But, if refCount hits 0 and closed is false then there's some bug lurking (in 
the app code or the Lucene code)?  Ie, someone did an extra decRef.  I'd rather 
things fail then hide the bug in that case.

> Don't use ensureOpen() excessively in IndexReader and IndexWriter
> -----------------------------------------------------------------
>
>                 Key: LUCENE-1707
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1707
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Index
>            Reporter: Shai Erera
>             Fix For: 2.9
>
>         Attachments: LUCENE-1707.patch
>
>
> A spin off from here: 
> http://www.nabble.com/Excessive-use-of-ensureOpen()-td24127806.html.
> We should stop calling this method when it's not necessary for any internal 
> Lucene code. Currently, this code seems to hurt properly written apps, 
> unnecessarily.
> Will post a patch soon

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