[
https://issues.apache.org/jira/browse/SOLR-1808?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12843363#action_12843363
]
Yonik Seeley commented on SOLR-1808:
------------------------------------
bq. Solr is maintaining a heavy weight Searcher instance
Well... IndexSearcher isn't particularly heavyweight, but Solr's implementation
is (due to historical reasons mostly).
No one is calling it optimal - we need to move more stuff to per-segment
caching over time.
> When IndexReader.reopen is called, old reader is not properly closed
> --------------------------------------------------------------------
>
> Key: SOLR-1808
> URL: https://issues.apache.org/jira/browse/SOLR-1808
> Project: Solr
> Issue Type: Bug
> Components: search
> Affects Versions: 1.4
> Reporter: John Wang
>
> According to Lucene documentation:
> "If the index has not changed since this instance was (re)opened, then this
> call is a NOOP and returns this instance. Otherwise, a new instance is
> returned. The old instance is not closed and remains usable."
> In SolrCore.java:
> if (newestSearcher != null && solrConfig.reopenReaders
> && indexDirFile.equals(newIndexDirFile)) {
> IndexReader currentReader = newestSearcher.get().getReader();
> IndexReader newReader = currentReader.reopen();
> if (newReader == currentReader) {
> currentReader.incRef();
> }
> tmp = new SolrIndexSearcher(this, schema, "main", newReader, true,
> true);
> }
> When currentReader!=newReader, currentReader seems to be leaking.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.