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>

Reply via email to