Tomás Fernández Löbbe created SOLR-6864:
-------------------------------------------
Summary: Support registering searcher listeners in
SolrCoreAware.inform(SolrCore) method
Key: SOLR-6864
URL: https://issues.apache.org/jira/browse/SOLR-6864
Project: Solr
Issue Type: Bug
Reporter: Tomás Fernández Löbbe
I'm marking this Jira as Bug because we already have components that do this
(SuggestComponent and SpellcheckComponent), however, listeners registered at
this stage not always work.
>From
>https://issues.apache.org/jira/browse/SOLR-6845?focusedCommentId=14250350&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14250350
{quote}
Trying to add some unit tests to this feature I found another issue.
SuggestComponent and SpellcheckComponent rely on a {{firstSearcherListener}} to
load (and in this case, also build) some structures. These
firstSearcherListeners are registered on {{SolrCoreAware.inform()}}, however
the first searcher listener task is only added to the queue of warming tasks if
there is at least one listener registered at the time of the first searcher
creation (before SolrCoreAware.inform() is ever called). See
{code:title=SolrCore.java}
if (currSearcher == null && firstSearcherListeners.size() > 0) {
future = searcherExecutor.submit(new Callable() {
@Override
public Object call() throws Exception {
try {
for (SolrEventListener listener : firstSearcherListeners) {
listener.newSearcher(newSearcher, null);
}
} catch (Throwable e) {
SolrException.log(log, null, e);
if (e instanceof Error) {
throw (Error) e;
}
}
return null;
}
});
}
{code}
I'll create a new Jira for this
{quote}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]