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

Joel Bernstein commented on SOLR-8807:
--------------------------------------

Just found this line in the SpellcheckCollator:

{code}
 checkResponse.setFieldFlags(f |= SolrIndexSearcher.TERMINATE_EARLY);           
 
{code}

This is problematic for the CollapsingQParserPlugin because not all segments 
will get visited during the search. Right now the CollapsingQParserPlugin 
relies on all segments getting visited or you get the NPE that is happening in 
the this ticket. There probably is a way to deal with this but it's going to 
take some looking into.

> NPE during spell checking when result collapsing is activated and index got 
> more than one segment.
> --------------------------------------------------------------------------------------------------
>
>                 Key: SOLR-8807
>                 URL: https://issues.apache.org/jira/browse/SOLR-8807
>             Project: Solr
>          Issue Type: Bug
>          Components: spellchecker
>    Affects Versions: 5.4
>         Environment: Solr 5.4 with an index cosisting of two segments
>            Reporter: Christian Danninger
>            Priority: Critical
>              Labels: collapse, spellcheck
>
> When using spellchecker with collapse/expand results, I got an NPE. Only 
> happend when the index consists of more than one segment. 
> {code}
> 11:30:33,505 WARN  [org.apache.solr.spelling.SpellCheckCollator] 
> (http-/0.0.0.0:8080-2) Exception trying to re-query to check if a spell check 
> possibility would return any hits.: java.lang.NullPointerException
>         at 
> org.apache.solr.search.CollapsingQParserPlugin$OrdScoreCollector.finish(CollapsingQParserPlugin.java:631)
>  [solr-core-5.4.0.jar:5.4.0 1718046 - upayavira - 2015-12-04 23:16:46]
>         at 
> org.apache.solr.search.CollapsingQParserPlugin$OrdScoreCollector.finish(CollapsingQParserPlugin.java:681)
>  [solr-core-5.4.0.jar:5.4.0 1718046 - upayavira - 2015-12-04 23:16:46]
>         at 
> org.apache.solr.search.SolrIndexSearcher.buildAndRunCollectorChain(SolrIndexSearcher.java:213)
>  [solr-core-5.4.0.jar:5.4.0 1718046 - upayavira - 2015-12-04 23:16:46]
>         at 
> org.apache.solr.search.SolrIndexSearcher.getDocListNC(SolrIndexSearcher.java:1672)
>  [solr-core-5.4.0.jar:5.4.0 1718046 - upayavira - 2015-12-04 23:16:46]
>         at 
> org.apache.solr.search.SolrIndexSearcher.getDocListC(SolrIndexSearcher.java:1491)
>  [solr-core-5.4.0.jar:5.4.0 1718046 - upayavira - 2015-12-04 23:16:46]
>         at 
> org.apache.solr.search.SolrIndexSearcher.search(SolrIndexSearcher.java:557) 
> [solr-core-5.4.0.jar:5.4.0 1718046 - upayavira - 2015-12-04 23:16:46]
>         at 
> org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:525)
>  [solr-core-5.4.0.jar:5.4.0 1718046 - upayavira - 2015-12-04 23:16:46]
>         at 
> org.apache.solr.spelling.SpellCheckCollator.collate(SpellCheckCollator.java:147)
>  [solr-core-5.4.0.jar:5.4.0 1718046 - upayavira - 2015-12-04 23:16:46]
>         at 
> org.apache.solr.handler.component.SpellCheckComponent.addCollationsToResponse(SpellCheckComponent.java:238)
>  [solr-core-5.4.0.jar:5.4.0 1718046 - upayavira - 2015-12-04 23:16:46]
>         at 
> org.apache.solr.handler.component.SpellCheckComponent.process(SpellCheckComponent.java:203)
>  [solr-core-5.4.0.jar:5.4.0 1718046 - upayavira - 2015-12-04 23:16:46]
>         at 
> org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:281)
>  [solr-core-5.4.0.jar:5.4.0 1718046 - upayavira - 2015-12-04 23:16:46]
>         at 
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:156)
>  [solr-core-5.4.0.jar:5.4.0 1718046 - upayavira - 2015-12-04 23:16:46]
>         at org.apache.solr.core.SolrCore.execute(SolrCore.java:2073) 
> [solr-core-5.4.0.jar:5.4.0 1718046 - upayavira - 2015-12-04 23:16:46]
> {code}
> {code}
>   <requestHandler name="/select" class="solr.SearchHandler">
>       <arr name="last-components">
>         <str>spellchecker</str>
>       </arr>    
>     </requestHandler>
> {code}
> The query parameters are:
> {code}
>       "spellcheck.maxCollations": "5",
>       "q.op": "AND",
>       "fq": "{!collapse field=type}",
>       "spellcheck.maxCollationTries": "10",
>       "spellcheck.collateMaxCollectDocs": "100000",
>       "spellcheck.alternativeTermCount": "10",
>       "spellcheck.extendedResults": "true",
>       "spellcheck.dictionary": [
>         "dest_wordbreak",
>         "dest_fuzzy"
>       ],
>       "q": "kosamui thailand",
>       "defType": "edismax",
>       "expand": "true",
>       "spellcheck.maxResultsForSuggest": "3",
>       "qf": "country_name region_name",
>       "spellcheck": "true",
>       "spellcheck.accuracy": "0.5",
>       "spellcheck.count": "20",
>       "spellcheck.collate": "true",
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to