[ https://issues.apache.org/jira/browse/LUCENE-1707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12724169#action_12724169 ]
Shai Erera commented on LUCENE-1707: ------------------------------------ bq. Patch looks good; thanks Shai! Note that decRef() sets closed=true if refCount = 0. This will protect against the other bug (calling close() then decRef() or vice versa). So if you don't want it there, we should remove it before committing. bq. so I think we should make it un-volatile; I'll change it before committing. If we change refCount to not volatile, is this patch still needed? I.e., what's wrong w/ checking in ensureOpen if refCount <= 0, same as before? bq. But too many calls to decRef is a real bug and I think we shouldn't mask/delay it. That would not be possible, since decRef() asserts refCount > 0 (and asserts are enabled in tests) and calls ensureOpen(). So calling decRef() twice in a raw would hit either an assert exception (tests) or ACE (assertions disabled). I think? > 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, 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