[ 
https://issues.apache.org/jira/browse/SOLR-1730?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13164537#comment-13164537
 ] 

Grant Ingersoll commented on SOLR-1730:
---------------------------------------

OK, so per IRC discussion w/ Mark and looking at the code, this exception 
actually causes the core to fail to construct and be registered.

It seems to me, then, that the way forward is that if this is the only core (or 
would be the only core) then Solr should fail and exit.  If there are other 
cores, it should log that the core for XXXX cannot be created and then proceed. 
 One core failure should not cause the others to be out of service.
                
> 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]

Reply via email to