Still not able to get my autoComplete component to work in a distributed environment. Works fine on a non-distributed system. Also, on the distributed system, if I include distrib=false, it works.
I have tried shards.qt and shards parameters, but they make no difference. I should add, I am running SolrCloud and ZooKeeper, if that makes any difference. I have played around with this quite a bit, but nothing seems to work. When I add shards.qt=/ac {the name of the request handler}, I get an error in the solr logs. It simply states: java.lang.NullPointerException. That's it nothing more. This is listed as "logger" SolrCore and SolrDispatchFilter. Any ideas, suggestions on how I can troubleshoot and find the problem? Is there something specific I should look for? Please find attached text file with relevant information from schema.xml and sorlconfig.xml. Any help greatly appreciated! Thanks, -Charles ----- Original Message ----- From: "Erick Erickson" <erickerick...@gmail.com> To: solr-user@lucene.apache.org Sent: Tuesday, December 30, 2014 6:07:13 PM Subject: Re: SpellCheck (AutoComplete) Not Working In Distributed Environment Did you try the shards parameter? See: https://cwiki.apache.org/confluence/display/solr/Spell+Checking#SpellChecking-DistributedSpellCheck On Tue, Dec 30, 2014 at 2:20 PM, Charles Sanders <csand...@redhat.com> wrote: > I'm running Solr 4.8 in a distributed environment (2 shards). I have added > the spellcheck component to my request handler. In my test system, which is > not distributed, it works. But when I move it to the Dev box, which is > distributed, 2 shards, it is not working. Is there something additional I > must do to get this to work in a distributed environment? > > <requestHandler default="true" name="standard" class="solr.SearchHandler"> > <!-- default values for query parameters can be specified, these > will be overridden by parameters in the request > --> > <lst name="defaults"> > <str name="echoParams">explicit</str> > <int name="rows">10</int> > <str name="df">allText</str> > <!-- default autocomplete settings for this search request handler --> > <str name="spellcheck">true</str> > <str name="spellcheck.dictionary">andreasAutoComplete</str> > <str name="spellcheck.onlyMorePopular">true</str> > <str name="spellcheck.count">5</str> > <str name="spellcheck.collate">true</str> > <str name="spellcheck.maxCollations">5</str> > </lst> > <arr name="last-components"> > <str>autoComplete</str> > </arr> > </requestHandler> > > <searchComponent name="autoComplete" class="solr.SpellCheckComponent"> > <lst name="spellchecker"> > <str name="name">andreasAutoComplete</str> > <str name="classname">org.apache.solr.spelling.suggest.Suggester</str> > <str > name="lookupImpl">org.apache.solr.spelling.suggest.tst.TSTLookupFactory</str> > <str name="field">sugg_allText</str> > <str name="buildOnCommit">true</str> > <float name="threshold">.005</float> > <str name="queryAnalyzerFieldType">text_suggest</str> > </lst> > </searchComponent> > > > Any help greatly appreciated! Thanks, > -Charles > > >
********* Schema.xml *************** <field name="issue_suggest" type="text_suggest" indexed="true" stored="false"/> <field name="sugg_allText" type="text_suggest" indexed="true" multiValued="true" stored="false"/> <fieldType name="text_suggest" class="solr.TextField" positionIncrementGap="100"> <analyzer type="index"> <tokenizer class="solr.StandardTokenizerFactory"/> <filter class="solr.LowerCaseFilterFactory"/> </analyzer> <analyzer type="query"> <tokenizer class="solr.StandardTokenizerFactory"/> <filter class="solr.LowerCaseFilterFactory"/> </analyzer> </fieldType> ******** Solrconfig.xml *************** <!-- Auto-Complete component --> <searchComponent name="autoComplete" class="solr.SpellCheckComponent"> <lst name="spellchecker"> <str name="name">andreasAutoComplete</str> <str name="classname">org.apache.solr.spelling.suggest.Suggester</str> <str name="lookupImpl">org.apache.solr.spelling.suggest.tst.TSTLookupFactory</str> <str name="field">sugg_allText</str> <str name="buildOnCommit">true</str> <float name="threshold">.005</float> <str name="queryAnalyzerFieldType">text_suggest</str> </lst> <lst name="spellchecker"> <str name="name">recommendationsAutoComplete</str> <str name="classname">org.apache.solr.spelling.suggest.Suggester</str> <str name="lookupImpl">org.apache.solr.spelling.suggest.tst.TSTLookupFactory</str> <str name="field">issue_suggest</str> <str name="buildOnCommit">true</str> <float name="threshold">.005</float> <str name="queryAnalyzerFieldType">text_suggest</str> </lst> </searchComponent> <requestHandler name="/ac" class="solr.SearchHandler"> <lst name="defaults"> <str name="spellcheck">true</str> <str name="spellcheck.dictionary">andreasAutoComplete</str> <str name="spellcheck.onlyMorePopular">true</str> <str name="spellcheck.count">5</str> <str name="spellcheck.collate">true</str> <str name="spellcheck.maxCollations">5</str> </lst> <arr name="components"> <str>autoComplete</str> </arr> </requestHandler> <requestHandler name="/rac" class="solr.SearchHandler"> <lst name="defaults"> <str name="spellcheck">true</str> <str name="spellcheck.dictionary">recommendationsAutoComplete</str> <str name="spellcheck.onlyMorePopular">true</str> <str name="spellcheck.count">5</str> <str name="spellcheck.collate">true</str> <str name="spellcheck.maxCollations">5</str> </lst> <arr name="components"> <str>autoComplete</str> </arr> </requestHandler>