Hi, We are getting the results for the query but the spellchecker component is returning 500. Please help us out.
*query*: http://localhostt:8111/solr/srch/select?q=malerkotla&qt=search *Error:* > "trace":"java.lang.StringIndexOutOfBoundsException: String index out of > range: -5 > > \tat java.lang.AbstractStringBuilder.replace(AbstractStringBuilder.java:789) > \tat java.lang.StringBuilder.replace(StringBuilder.java:266) > \tat > org.apache.solr.spelling.SpellCheckCollator.getCollation(SpellCheckCollator.java:235) > > \tat > org.apache.solr.spelling.SpellCheckCollator.collate(SpellCheckCollator.java:92) > \tat > org.apache.solr.handler.component.SpellCheckComponent.addCollationsToResponse(SpellCheckComponent.java:230) > \tat > org.apache.solr.handler.component.SpellCheckComponent.process(SpellCheckComponent.java:197) > > \tat > org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:218) > \tat > org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135) > \tat org.apache.solr.core.SolrCore.execute(SolrCore.java:1952) > > \tat > org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:774) > \tat > org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:418) > \tat > org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:207) > > \tat > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) > \tat > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) > \tat > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) > > \tat > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) > \tat > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) > \tat > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) > > \tat org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953) > \tat > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) > \tat > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) > > \tat > org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023) > \tat > org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) > \tat > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) > > \tat > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > \tat > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > \tat java.lang.Thread.run(Thread.java:745) > > The suggestions when i query with the separate words (maler & kotla): http://localhostt:8111/solr/srch/select?q=maler%20kotla&qt=search > "facet_counts":{ > "facet_queries":{}, > "facet_fields":{ > "city":[ > "maler kotla",2, > "ludhiana",1], > "datatype":[ > "company",2, > "product",1]}, > "facet_dates":{}, > "facet_ranges":{}}, > "spellcheck":{ > "suggestions":[ > "maler",{ > "numFound":7, > "startOffset":0, > "endOffset":5, > "origFreq":9, > "suggestion":[{ > "word":"maker", > "freq":19751}, > { > "word":"mailer", > "freq":1439}, > { > "word":"mayer", > "freq":271}, > { > "word":"mater", > "freq":214}, > { > "word":"malar", > "freq":183}, > { > "word":"maier", > "freq":123}, > { > "word":"male", > "freq":32169}]}, > "kotla",{ > "numFound":3, > "startOffset":6, > "endOffset":11, > "origFreq":30, > "suggestion":[{ > "word":"koala", > "freq":282}, > { > "word":"kota", > "freq":5355}, > { > "word":"kola", > "freq":861}]}, > "correctlySpelled",true, > "collation","maker koala"]}} > > Full Response for erroed url : http://localhostt:8111/solr/srch/select?q=malerkotla&qt=search > > { > "responseHeader":{ > "status":500, > "QTime":49}, > "grouped":{ > "glusrid":{ > "matches":2802, > "ngroups":314, > "groups":[]}}, > "facet_counts":{ > "facet_queries":{}, > "facet_fields":{ > "city":[ > "maler kotla",311, > "bengaluru",1, > "ludhiana",1, > "mohali",1], > "datatype":[ > "company",162, > "product",146, > "offer",6]}, > "facet_dates":{}, > "facet_ranges":{}}, > "error":{ > "msg":"String index out of range: -5", > "trace":"java.lang.StringIndexOutOfBoundsException: String index out of > range: -5\n\tat > java.lang.AbstractStringBuilder.replace(AbstractStringBuilder.java:789)\n\tat > java.lang.StringBuilder.replace(StringBuilder.java:266)\n\tat > org.apache.solr.spelling.SpellCheckCollator.getCollation(SpellCheckCollator.java:235)\n\tat > > org.apache.solr.spelling.SpellCheckCollator.collate(SpellCheckCollator.java:92)\n\tat > > org.apache.solr.handler.component.SpellCheckComponent.addCollationsToResponse(SpellCheckComponent.java:230)\n\tat > > org.apache.solr.handler.component.SpellCheckComponent.process(SpellCheckComponent.java:197)\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.SolrCore.execute(SolrCore.java:1952)\n\tat > org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:774)\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:222)\n\tat > > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)\n\tat > > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)\n\tat > > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)\n\tat > > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)\n\tat > > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)\n\tat > > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)\n\tat > > org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)\n\tat > > org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)\n\tat > > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)\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}} > > With Regards Aman Tandon