You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Matthias Krueger (JIRA)" <ji...@apache.org> on 2017/03/21 23:20:42 UTC

[jira] [Updated] (SOLR-8807) NPE during spell checking when result collapsing is activated and index got more than one segment.

     [ https://issues.apache.org/jira/browse/SOLR-8807?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Matthias Krueger updated SOLR-8807:
-----------------------------------
    Attachment: SOLR-8807.patch

A simple solution would be to have CollapsingQParserPlugin behave like other DelegatingCollectors and call
{code}
super.doSetNextReader(context); 
{code}
in doSetNextReader. Not sure if omission was intentional though. This at least avoids the NPE we're seeing.

> 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
>         Attachments: SOLR-8807.patch
>
>
> 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.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org