[
https://issues.apache.org/jira/browse/SOLR-1730?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13164523#comment-13164523
]
Grant Ingersoll commented on SOLR-1730:
---------------------------------------
{quote}
The SearchHandler has not yet been core informed (as the
QueryElevationComponent causes this as its getting core informed right before
the SearchHandler) and so its components arraylist is still null.
{quote}
I believe this is no longer the case, at least in 4. I think this all works
correctly other than what to do if an inform() actually fails. For QEC, it's
probably enough to log and silently not elevate anything, but I'm not sure if
that makes sense with other components
> Solr fails to start if QueryElevationComponent config is missing
> ----------------------------------------------------------------
>
> Key: SOLR-1730
> URL: https://issues.apache.org/jira/browse/SOLR-1730
> Project: Solr
> Issue Type: Bug
> Components: SearchComponents - other
> Affects Versions: 1.4
> Reporter: Mark Miller
> Assignee: Grant Ingersoll
> Labels: newdev
> Fix For: 3.6, 4.0
>
> Attachments: SOLR-1730.patch
>
>
> QueryElevationComponent tries to do preload some data if its config file does
> not exist:
> {code}
> if (!exists){
> // preload the first data
> RefCounted<SolrIndexSearcher> searchHolder = null;
> try {
> searchHolder = core.getNewestSearcher(false);
> IndexReader reader = searchHolder.get().getReader();
> getElevationMap( reader, core );
> } finally {
> if (searchHolder != null) searchHolder.decref();
> }
> }
> {code}
> This does not work though, as asking for the newest searcher causes a request
> to be submitted to Solr before its ready to handle it:
> {code}
> [java] SEVERE: java.lang.NullPointerException
> [java] at
> org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:173)
> [java] at
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:131)
> [java] at org.apache.solr.core.SolrCore.execute(SolrCore.java:1317)
> [java] at
> org.apache.solr.core.QuerySenderListener.newSearcher(QuerySenderListener.java:52)
> [java] at org.apache.solr.core.SolrCore$3.call(SolrCore.java:1147)
> [java] at
> java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> [java] at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> {code}
> The SearchHandler has not yet been core informed (as the
> QueryElevationComponent causes this as its getting core informed right before
> the SearchHandler) and so its components arraylist is still null.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]