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

Simon Willnauer commented on LUCENE-2108:
-----------------------------------------

bq. Eirik, could you open a new issue to address SpellChecker's 
non-thread-safety? I actually thing simply documenting clearly that it's not 
thread safe is fine.
Mike, IMO thread-safety and close() are closely related. If you close the 
spellchecker you don't want other threads to access the spellchecker anymore. I 
would keep that inside this issue and rather add close + make it threadsafe in 
one go.
Since spellchecker instances are shared between threads already we should 
rather try to make it thread-safe than documenting it. I see this as a bug 
though as you really want to share the spellchecker (essentially the searcher) 
instance instead of opening one for each thread.

> SpellChecker file descriptor leak - no way to close the IndexSearcher used by 
> SpellChecker internally
> -----------------------------------------------------------------------------------------------------
>
>                 Key: LUCENE-2108
>                 URL: https://issues.apache.org/jira/browse/LUCENE-2108
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: contrib/spellchecker
>    Affects Versions: 3.0
>            Reporter: Eirik Bjorsnos
>            Assignee: Simon Willnauer
>             Fix For: 3.0.1, 3.1
>
>         Attachments: LUCENE-2108-SpellChecker-close.patch, LUCENE-2108.patch
>
>
> I can't find any way to close the IndexSearcher (and IndexReader) that
> is being used by SpellChecker internally.
> I've worked around this issue by keeping a single SpellChecker open
> for each index, but I'd really like to be able to close it and
> reopen it on demand without leaking file descriptors.
> Could we add a close() method to SpellChecker that will close the
> IndexSearcher and null the reference to it? And perhaps add some code
> that reopens the searcher if the reference to it is null? Or would
> that break thread safety of SpellChecker?
> The attached patch adds a close method but leaves it to the user to
> call setSpellIndex to reopen the searcher if desired.

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