Hello everyone, I got a NullPointer-Exception running a select-SearchHandler with a suggest component on multiple shards (cloud mode). It does work in the same configuration with a single shard (or non-cloud setup). The suggest requestHandler does work in both setups.
Exception: <lst name="responseHeader"> <bool name="zkConnected">true</bool> <int name="status">500</int> <int name="QTime">16</int> <lst name="params"> <str name="q">*:*</str> <str name="defType">edismax</str> <str name="df">_text_</str> <str name="echoParams">all</str> <str name="indent">on</str> <str name="qf">_text_</str> <str name="wt">xml</str> <str name="_">1508861012736</str> </lst> </lst> <lst name="error"> <str name="trace">java.lang.NullPointerException at org.apache.solr.handler.component.QueryComponent.unmarshalSortValues(QueryComponent.java:1224) at org.apache.solr.handler.component.QueryComponent.mergeIds(QueryComponent.java:1075) at org.apache.solr.handler.component.QueryComponent.handleRegularResponses(QueryComponent.java:775) at org.apache.solr.handler.component.QueryComponent.handleResponses(QueryComponent.java:754) at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:429) at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:173) at org.apache.solr.core.SolrCore.execute(SolrCore.java:2477) at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:723) at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:529) at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:361) at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:305) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1691) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:582) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:119) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134) at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:335) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134) at org.eclipse.jetty.server.Server.handle(Server.java:534) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:273) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95) at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93) at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303) at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148) at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671) at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589) Multi-Shard-Setup (Solr 6.6.2): 1 Collection with 2 Shards (each ~29k documents) Single-Shard-Setup (Solr 6.6.2): 1 Collection with 1 Shard (58k documents) Here is my configoverlay.json (everything else is default data-driven) { "userProps":{"update.autoCreateFields":"false"}, "searchComponent":{"suggest":{ "name":"suggest", "class":"solr.SuggestComponent", "suggester":{ "name":"mySuggester", "lookupImpl":"FuzzyLookupFactory", "dictionaryImpl":"DocumentDictionaryFactory", "field":"id", "suggestAnalyzerFieldType":"string", "buildOnStartup":"true"}}}, "requestHandler":{ "/select":{ "name":"/select", "class":"solr.SearchHandler", "defaults":{ "defType":"edismax", "qf":"_text_"}, "components":[ "query", "facet", "suggest", "debug"]}, "/suggest":{ "name":"/suggest", "class":"solr.SearchHandler", "defaults":{ "suggest":"true", "suggest.dictionary":"mySuggester", "suggest.count":5}, "components":["suggest"]}}} Did I do something wrong with my configuration? Greetings, Mirko Vogelsmeier Lynx-Consulting GmbH www.lynx.de<http://www.lynx.de> Sitz: Wiesbaden, Amtsgericht Wiesbaden, Gen.-Register 318, Steuernummer 040 227 00053 Vorstand: Peter Erlebach (Vorsitzender), Franz-J. Kollner, Mark Wulfinghoff Vorsitzender des Aufsichtsrates: Prasident Uwe Frohlich Diese E-Mail enthalt vertrauliche und/oder rechtlich geschutzte Informationen. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail irrtumlich erhalten haben, informieren Sie bitte sofort den Absender und vernichten Sie diese E-Mail. Das unerlaubte Kopieren und die unbefugte Weitergabe dieser E-Mail sind nicht gestattet. This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error please notify the sender immediately and delete this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden.