Attach suggester.build=true or suggester.buildAll=true to any request
to suggester to rebuild.
OR
add
buildOnStartup or buildOnCommit or buildOnOptimize to the definition
in solrConfig.

BUT:
building can be a _very_ expensive operation. For document-based
indexes, the build process
reads through _all_ of the _stored_ documents in your index, and that
can take many minutes so
I recommend against these options for a large index, and strongly
recommend you test these
with a large corpus.

Best,
Erick



On Mon, Jun 1, 2015 at 4:01 AM, Clemens Wyss DEV <clemens...@mysign.ch> wrote:
> Lucene 5.1:
> I am (also) facing
> "java.lang.IllegalStateException: suggester was not built"
>
> At the very moment no new documents seem tob e added to the index/core. Will 
> a reboot "sanitize" the index/core?
>
> I (still) have
> <str> name="buildOnCommit">true</str>
>
> How can I tell Solr to peridoically update the suggestions? If not possible 
> per configuration (in solrconfig.xml), what ist he preferred approach through 
> SolrJ?
>
> Thx
> Clemens
>
> -----Ursprüngliche Nachricht-----
> Von: Michael Sokolov [mailto:msoko...@safaribooksonline.com]
> Gesendet: Donnerstag, 15. Januar 2015 19:52
> An: solr-user@lucene.apache.org
> Betreff: Re: Occasionally getting error in solr suggester component.
>
> That sounds like a good approach to me.  Of course it depends how often you 
> commit, and what your tolerance is for delay in having suggestions appear, 
> but it sounds as if you have a good understanding of the tradeoffs there.
>
> -Mike
>
> On 1/15/15 10:31 AM, Dhanesh Radhakrishnan wrote:
>> Hi,
>>  From Solr 4.7 onwards, the implementation of this Suggester is
>> changed. The old SpellChecker based search component is replaced with
>> a new suggester that utilizes Lucene suggester module. The latest Solr
>> download is preconfigured with this new suggester I;m using Solr 4.10
>> and suggestion are based on query  /suggest instead of /spell.
>> So what I did is that in changed to <str
>> name="buildOnCommit">false</str> Its not good that each time rebuild
>> the index on  commit , however, I would like to build the index on
>> certain time period, say 1 hour.
>> The lookup data will be built only when requested by URL parameter
>> suggest.build=true
>>
>> "http://localhost:8983/solr/ha/suggest?suggest.build=true";
>>
>> So this will rebuild the index again and the changes will reflect in
>> the suggester.
>>
>> There are certain pros and cons for this.
>> Issue is that the change will reflect only on certain time interval,
>> here 1 hour. Advantage is that we can avoid the  rebuilt index  on
>> every commit or optimize.
>>
>> Is this the right way ?? or any that I missed ???
>>
>> Regards
>> dhanesh s.r
>>
>>
>>
>>
>> On Thu, Jan 15, 2015 at 3:20 AM, Michael Sokolov <
>> msoko...@safaribooksonline.com> wrote:
>>
>>> did you build the spellcheck index using spellcheck.build as
>>> described
>>> here: https://cwiki.apache.org/confluence/display/solr/Spell+Checking ?
>>>
>>> -Mike
>>>
>>>
>>> On 01/14/2015 07:19 AM, Dhanesh Radhakrishnan wrote:
>>>
>>>> Hi,
>>>> Thanks for the reply.
>>>> As you mentioned in the previous mail I changed buildOnCommit=false
>>>> in solrConfig.
>>>> After that change, suggestions are not working.
>>>> In Solr 4.7 introduced a new approach based on a dedicated
>>>> SuggestComponent I'm using that component to build suggestions and
>>>> lookup implementation is "AnalyzingInfixLookupFactory"
>>>> Is there any work around ??
>>>>
>>>>
>>>>
>>>>
>>>> On Wed, Jan 14, 2015 at 12:47 AM, Michael Sokolov <
>>>> msoko...@safaribooksonline.com> wrote:
>>>>
>>>>   I think you are probably getting bitten by one of the issues
>>>> addressed in
>>>>> LUCENE-5889
>>>>>
>>>>> I would recommend against using buildOnCommit=true - with a large
>>>>> index this can be a performance-killer.  Instead, build the index
>>>>> yourself using the Solr spellchecker support
>>>>> (spellcheck.build=true)
>>>>>
>>>>> -Mike
>>>>>
>>>>>
>>>>> On 01/13/2015 10:41 AM, Dhanesh Radhakrishnan wrote:
>>>>>
>>>>>   Hi all,
>>>>>> I am experiencing a problem in Solr SuggestComponent Occasionally
>>>>>> solr suggester component throws an  error like
>>>>>>
>>>>>> Solr failed:
>>>>>> {"responseHeader":{"status":500,"QTime":1},"error":{"msg":"suggest
>>>>>> er
>>>>>> was
>>>>>> not built","trace":"java.lang.IllegalStateException: suggester was
>>>>>> not built\n\tat
>>>>>> org.apache.lucene.search.suggest.analyzing.AnalyzingInfixSuggester.
>>>>>> lookup(AnalyzingInfixSuggester.java:368)\n\tat
>>>>>> org.apache.lucene.search.suggest.analyzing.AnalyzingInfixSuggester.
>>>>>> lookup(AnalyzingInfixSuggester.java:342)\n\tat
>>>>>> org.apache.lucene.search.suggest.Lookup.lookup(Lookup.java:240)\n\
>>>>>> tat org.apache.solr.spelling.suggest.SolrSuggester.
>>>>>> getSuggestions(SolrSuggester.java:199)\n\tat
>>>>>> org.apache.solr.handler.component.SuggestComponent.
>>>>>> process(SuggestComponent.java:234)\n\tat
>>>>>> org.apache.solr.handler.component.SearchHandler.handleRequestBody(
>>>>>> SearchHandler.java:218)\n\tat
>>>>>> org.apache.solr.handler.RequestHandlerBase.handleRequest(
>>>>>> RequestHandlerBase.java:135)\n\tat
>>>>>> org.apache.solr.core.RequestHandlers$LazyRequestHandlerWrapper.
>>>>>> handleRequest(RequestHandlers.java:246)\n\tat
>>>>>> org.apache.solr.core.SolrCore.execute(SolrCore.java:1967)\n\tat
>>>>>> org.apache.solr.servlet.SolrDispatchFilter.execute(
>>>>>> SolrDispatchFilter.java:777)\n\tat
>>>>>> org.apache.solr.servlet.SolrDispatchFilter.doFilter(
>>>>>> SolrDispatchFilter.java:418)\n\tat
>>>>>> org.apache.solr.servlet.SolrDispatchFilter.doFilter(
>>>>>> SolrDispatchFilter.java:207)\n\tat
>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
>>>>>> ApplicationFilterChain.java:243)\n\tat
>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(
>>>>>> ApplicationFilterChain.java:210)\n\tat
>>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(
>>>>>> StandardWrapperValve.java:225)\n\tat
>>>>>> org.apache.catalina.core.StandardContextValve.invoke(
>>>>>> StandardContextValve.java:123)\n\tat
>>>>>> org.apache.catalina.core.StandardHostValve.invoke(
>>>>>> StandardHostValve.java:168)\n\tat
>>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(
>>>>>> ErrorReportValve.java:98)\n\tat
>>>>>> org.apache.catalina.valves.AccessLogValve.invoke(
>>>>>> AccessLogValve.java:927)\n\tat
>>>>>> org.apache.catalina.valves.RemoteIpValve.invoke(
>>>>>> RemoteIpValve.java:680)\n\tat
>>>>>> org.apache.catalina.core.StandardEngineValve.invoke(
>>>>>> StandardEngineValve.java:118)\n\tat
>>>>>> org.apache.catalina.connector.CoyoteAdapter.service(
>>>>>> CoyoteAdapter.java:407)\n\tat
>>>>>> org.apache.coyote.http11.AbstractHttp11Processor.process(
>>>>>> AbstractHttp11Processor.java:1002)\n\tat
>>>>>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.
>>>>>> process(AbstractProtocol.java:579)\n\tat
>>>>>> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.
>>>>>> run(JIoEndpoint.java:312)\n\tat
>>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(
>>>>>> ThreadPoolExecutor.java:1145)\n\tat
>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(
>>>>>> ThreadPoolExecutor.java:615)\n\tat
>>>>>> java.lang.Thread.run(Thread.java:745)\n","code":500}}
>>>>>>
>>>>>> This is not freequently happening, but idexing and suggestor
>>>>>> component working togethere  this error will occur.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> In solr config
>>>>>>
>>>>>> <searchComponent name="suggest" class="solr.SuggestComponent">
>>>>>>        <lst name="suggester">
>>>>>>          <str name="name">haSuggester</str>
>>>>>>          <str name="lookupImpl">AnalyzingInfixLookupFactory</str>
>>>>>> <!--
>>>>>> org.apache.solr.spelling.suggest.fst -->
>>>>>>          <str name="suggestAnalyzerFieldType">textSpell</str>
>>>>>>          <str name="dictionaryImpl">DocumentDictionaryFactory</str>
>>>>>>    <!--
>>>>>> org.apache.solr.spelling.suggest.HighFrequencyDictionaryFactory -->
>>>>>>          <str name="field">name</str>
>>>>>>          <str name="weightField">packageWeight</str>
>>>>>>          <str name="buildOnCommit">true</str>
>>>>>>        </lst>
>>>>>>      </searchComponent>
>>>>>>
>>>>>>      <requestHandler name="/suggest" class="solr.SearchHandler"
>>>>>> startup="lazy">
>>>>>>        <lst name="defaults">
>>>>>>          <str name="suggest">true</str>
>>>>>>          <str name="suggest.count">10</str>
>>>>>>        </lst>
>>>>>>        <arr name="components">
>>>>>>          <str>suggest</str>
>>>>>>        </arr>
>>>>>>      </requestHandler>
>>>>>>
>>>>>> Can any one suggest where to look to figure out this error and why
>>>>>> these errors are occurring?
>>>>>>
>>>>>>
>>>>>>
>>>>>> Thanks,
>>>>>> dhanesh s.r
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>>
>>>>>>
>>>>>>
>>
>

Reply via email to