[
https://issues.apache.org/jira/browse/SOLR-10395?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15964298#comment-15964298
]
Frank Steggink edited comment on SOLR-10395 at 4/11/17 12:34 PM:
-----------------------------------------------------------------
{quote}
I've noticed the exception only occurs when no more than 2 alternatives are
found, but when 3 alternatives (maxCollations) are found, the NPE isn't
occurring.
{quote}
I don't know why I said that the NPE wasn't occurring, but it still appears in
the Solr log. Also note that the collations array has always been empty.
I've also set maxCollations to 2. I see suggestions being given with 2 results
and also with 3 results, but not with 4 results. However, in all cases I'm
still seeing the NPE. I did reload the collection, after I've pushed the new
configuration to Zookeeper.
was (Author: fsteggink):
{quote}
I've noticed the exception only occurs when no more than 2 alternatives are
found, but when 3 alternatives (maxCollations) are found, the NPE isn't
occurring.
{/quote}
I don't know why I said that the NPE wasn't occurring, but it still appears in
the Solr log. Also note that the collations array has always been empty.
I've also set maxCollations to 2. I see suggestions being given with 2 results
and also with 3 results, but not with 4 results. However, in all cases I'm
still seeing the NPE. I did reload the collection, after I've pushed the new
configuration to Zookeeper.
> NPE during spell check with result collation
> --------------------------------------------
>
> Key: SOLR-10395
> URL: https://issues.apache.org/jira/browse/SOLR-10395
> Project: Solr
> Issue Type: Bug
> Security Level: Public(Default Security Level. Issues are Public)
> Components: spellchecker
> Affects Versions: 6.2.1
> Reporter: Frank Steggink
>
> I'm getting a NullPointerException when using collation during spell check.
> This is the message I'm getting: Exception trying to re-query to check if a
> spell check possibility would return any hits.
> Stack trace:
> {code}
> 2017-03-13 13:05:54.618 WARN (qtp472654579-84) [c:locatieserver s:dkk
> r:core_node4 x:locatieserver_dkk_replica2] o.a.s.s.SpellCheckCollator
> Exception trying to re-query to check if a spell check possibility would
> return any hits.
> java.lang.NullPointerException
> at
> org.apache.solr.spelling.SpellCheckCollator.collate(SpellCheckCollator.java:150)
> at
> org.apache.solr.handler.component.SpellCheckComponent.addCollationsToResponse(SpellCheckComponent.java:297)
> at
> org.apache.solr.handler.component.SpellCheckComponent.process(SpellCheckComponent.java:209)
> at
> org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:295)
> at
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:154)
> at org.apache.solr.core.SolrCore.execute(SolrCore.java:2089)
> ...
> {code}
> My spell check config for this search handler:
> {code:xml}
> <str name="spellcheck">on</str>
> <str name="spellcheck.dictionary">suggest</str>
> <str name="spellcheck.extendedResults">false</str>
> <str name="spellcheck.count">5</str>
> <str name="spellcheck.alternativeTermCount">2</str>
> <str name="spellcheck.maxResultsForSuggest">3</str>
> <str name="spellcheck.collate">true</str>
> <str name="spellcheck.collateExtendedResults">true</str>
> <str name="spellcheck.maxCollationTries">5</str>
> <str name="spellcheck.maxCollations">3</str>
> {code}
> The field "suggest" is a field in the index, which is also (usually) queried
> with this search handler. The field is filled with lots of data created by
> edge ngrams, since it's intended usage is for an autocomplete field.
> This issue is very similar to SOLR-8807, but the NPE is occurring one line in
> the code later
> (solr\core\src\java\org\apache\solr\spelling\SpellCheckCollator.java). As a
> result the patch attached to that issue probably won't work in my case.
> {code:java}
> try {
> queryComponent.prepare(checkResponse);
> if (docCollectionLimit > 0) {
> int f = checkResponse.getFieldFlags();
> checkResponse.setFieldFlags(f |=
> SolrIndexSearcher.TERMINATE_EARLY);
> }
> queryComponent.process(checkResponse);
> hits = (Integer) checkResponse.rsp.getToLog().get("hits");
> } catch (EarlyTerminatingCollectorException etce) {
> {code}
> Although I'm using Solr 6.2.1, the source file is still identical to Solr
> 6.5.0.
> The line causing my exception is when determining the hits. -I've noticed the
> exception only occurs when no more than 2 alternatives are found, but when 3
> alternatives (maxCollations) are found, the NPE isn't occurring.-
> As a workaround I could live for now with turning collations off. (Update:
> I've suppressed logging of these exceptions in log4j.properties.)
> Please let me know if you need more information. Thanks!
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]