This setting is pretty dangerous. It’ll build the suggester every time the Solr instance starts. The DocumentDictionaryFactory will read _every_ document in your index to extract the stored “suggest” field and create the dictionary.
But this points to the fact that you hadn’t built the dictionary when you originally posted the problem, you can do this by issuing a command (curl it in, or on the browser line) like: blahblahblahblah/solr/collection/suggest?suggest.build=true&suggest=true Best, Erick > On Nov 6, 2019, at 4:32 PM, Tyrone Tse <tyrone...@hotmail.com> wrote: > > It's working now that I changed the solrconfig.xml to > > <searchComponent name="suggest" class="solr.SuggestComponent"> > <lst name="suggester"> > <str name="name">mySuggester</str> > <str name="lookupImpl">FreeTextLookupFactory</str> > <str name="dictionaryImpl">DocumentDictionaryFactory</str> > <str name="field">suggest</str> > <str name="ngrams">3</str> > <str name="separator"> </str> > <str > name="suggestFreeTextAnalyzerFieldType">text_en_splitting</str> > *<str name="buildOnStartup">true</str>* > </lst> > </searchComponent> > > On Wed, Nov 6, 2019 at 3:11 PM Tyrone Tse <tyrone...@hotmail.com> wrote: > >> What's the command to build it >> >> >> On Wed, Nov 6, 2019 at 3:06 PM Mikhail Khludnev <m...@apache.org> wrote: >> >>> Hello, >>> >>> Have you build suggester before requesting? >>> >>> On Wed, Nov 6, 2019 at 12:50 PM Tyrone Tse <tyrone...@hotmail.com> wrote: >>> >>>> Solr version 8.1.1 >>>> >>>> My schema >>>> >>>> <field name="suggest" type="text_en_splitting" stored="true" >>>> multiValued="false" indexed="true"/> >>>> <copyField source="name" dest="suggest" maxChars="256"/> >>>> >>>> solconfig.xml >>>> >>>> <searchComponent name="suggest" class="solr.SuggestComponent"> >>>> <lst name="suggester"> >>>> <str name="name">mySuggester</str> >>>> <str name="lookupImpl">FreeTextLookupFactory</str> >>>> <str name="dictionaryImpl">DocumentDictionaryFactory</str> >>>> <str name="field">suggest</str> >>>> <str name="ngrams">3</str> >>>> <str name="separator"> </str> >>>> <str >>>> name="suggestFreeTextAnalyzerFieldType">text_en_splitting</str> >>>> <str name="buildOnStartup">false</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> >>>> >>>> The suggest query >>>> >>>> >>> http://localhost:8983/solr/catalog/suggest?suggest=true&suggest.dictionary=mySuggester&suggest.q=gin >>>> >>>> works on Red Hat Enterprise Linux 7.6 >>>> >>>> it returns >>>> >>>> { >>>> "responseHeader":{ >>>> "status":0, >>>> "QTime":0}, >>>> "suggest":{"mySuggester":{ >>>> "gin":{ >>>> "numFound":10, >>>> "suggestions":[{ >>>> "term":"gin", >>>> "weight":13613207305387128, >>>> "payload":""}, >>>> { >>>> "term":"ginjo", >>>> "weight":3986422076966947, >>>> "payload":""}, >>>> ... >>>> >>>> But when I on my Mac with OS High Sierra >>>> Generates the error >>>> >>>> "Lookup not supported at this time" >>>> >>>> "java.lang.IllegalStateException: Lookup not supported at this >>> time\n\tat >>>> >>>> >>> org.apache.lucene.search.suggest.analyzing.FreeTextSuggester.lookup(FreeTextSuggester.java:428)\n\tat >>>> >>>> >>> org.apache.lucene.search.suggest.analyzing.FreeTextSuggester.lookup(FreeTextSuggester.java:399)\n\tat >>>> >>>> >>> org.apache.lucene.search.suggest.analyzing.FreeTextSuggester.lookup(FreeTextSuggester.java:388)\n\tat >>>> >>>> >>> org.apache.solr.spelling.suggest.SolrSuggester.getSuggestions(SolrSuggester.java:243)\n\tat >>>> >>>> >>> org.apache.solr.handler.component.SuggestComponent.process(SuggestComponent.java:264)\n\tat >>>> >>>> >>> org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:298)\n\tat >>>> >>>> >>> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:199)\n\tat >>>> org.apache.solr.core.SolrCore.execute(SolrCore.java:2566)\n\tat >>>> >>> org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:756)\n\tat >>>> org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:542)\n\tat >>>> >>> >>> >>> -- >>> Sincerely yours >>> Mikhail Khludnev >>> >>