andyRandy
andyRandy

Reputation: 93

Solr autosuggest config

I am trying to create an autosuggest functionality with Solr 9.5. This is my configuration:

solrconfig.xml

<requestHandler name="/suggest" class="solr.SearchHandler" startup="lazy">
    <lst name="defaults">
        <str name="echoParams">explicit</str>
        <str name="suggest">true</str>
        <str name="suggest.dictionary">default</str>
        <str name="suggest.onlyMorePopular">false</str>
        <str name="suggest.count">15</str>
    </lst>
    <arr name="components">
        <str>suggest</str>
    </arr>
</requestHandler>

// suggester defined for several languages
<searchComponent name="suggest" class="solr.SuggestComponent">
    <lst name="suggester">
        <str name="name">default</str>
        <str name="classname">org.apache.solr.spelling.suggest.Suggester</str>
        <str name="lookupImpl">BlendedInfixLookupFactory</str>
        <str name="blenderType">position_linear</str>
        <str name="dictionaryImpl">DocumentDictionaryFactory</str>
        <str name="field">suggestKeyword_text_de_mv</str>
        <str name="weightField">suggestPriority_double</str>
        <str name="sortField">suggestPriority_double</str>
        <str name="payloadField">suggestPriority_double</str>
        <str name="suggestAnalyzerFieldType">text_spell</str>
        <str name="queryAnalyzerFieldType">text_spell_de</str>
        <bool name="highlight">false</bool>
        <str name="buildOnStartup">false</str>
        <bool name="exactMatchFirst">true</bool>
        <bool name="preserveSep">false</bool>
    </lst>
    ....
</searchComponent>

example doc within Solr:

{
  ...
  "suggestKeyword_text_de_mv":["hama apple tv","hama apple","hama","apple tv","apple","tv"],
  "suggestPriority_double":12.0,
  ...
}

query result:

"suggest":{
"de":{
  "apple+mac":{
    "numFound":8,
    "suggestions":[{
      "term":"apple macbook",
      "weight":40,
      "payload":""
    },....]
  }
}

}

My problems are the following:

What is wrong with my configuration?

Upvotes: 0

Views: 25

Answers (1)

andyRandy
andyRandy

Reputation: 93

Nevermind. There was an old suggester still somewhere in the cache, which corrupted the results. After deleting and recreating, the problems are solved.

Upvotes: 0

Related Questions