Ok, thank you. *Anna Ruggero* R&D Machine Learning / Software Engineer, Search Consultant e-mail: a.rugg...@sease.io
*Sease* - Information Retrieval Applied Consulting | Training | Open Source Sease.io <http://sease.io/> LinkedIn <https://linkedin.com/company/sease-ltd> | Twitter <https://twitter.com/seaseltd> | Youtube <https://www.youtube.com/channel/UCDx86ZKLYNpI3gzMercM7BQ> | Github <https://github.com/seaseltd> On Wed, Sep 13, 2023 at 3:14 AM Joel Bernstein <joels...@gmail.com> wrote: > You are running into this bug: > https://issues.apache.org/jira/browse/SOLR-16931 > > Currently ReRankScaler.explain requires the debugQuery=true parameter to > work properly. I plan fixing this in the next release. > > > > > Joel Bernstein > http://joelsolr.blogspot.com/ > > > On Tue, Sep 12, 2023 at 2:31 AM Anna Ruggero <a.rugg...@sease.io> wrote: > > > Hi, > > I encountered an issue with the re-rank query when setting the scale and > > debug=true parameters with Solr 9.3. > > When both the scale and the debug are set, a NullPointerException arises > > from the ReRankScaler.explain method. > > Without the scaling factors, the debug part works. > > In both cases (with and without scaling) the re-rank query works, it > > is only the debug part that has problems. > > > > Here is the trace: > > > > "error": { > > "msg": "Cannot invoke \"java.util.Set.contains(Object)\" because > > \"this.reRankSet\" is null", > > "trace": "java.lang.NullPointerException: Cannot invoke > > \"java.util.Set.contains(Object)\" because \"this.reRankSet\" is > > null\n\tat > > org.apache.solr.search.ReRankScaler.explain(ReRankScaler.java:348)\n\tat > > org.apache.solr.search.ReRankWeight.explain(ReRankWeight.java:58)\n\tat > > > > > org.apache.lucene.search.IndexSearcher.explain(IndexSearcher.java:893)\n\tat > > > > > org.apache.lucene.search.IndexSearcher.explain(IndexSearcher.java:869)\n\tat > > > > > org.apache.solr.search.SolrIndexSearcher.explain(SolrIndexSearcher.java:2508)\n\tat > > > > > org.apache.solr.util.SolrPluginUtils.getExplanations(SolrPluginUtils.java:415)\n\tat > > > > > org.apache.solr.util.SolrPluginUtils.doStandardResultsDebug(SolrPluginUtils.java:348)\n\tat > > > > > org.apache.solr.util.SolrPluginUtils.doStandardDebug(SolrPluginUtils.java:315)\n\tat > > > > > org.apache.solr.handler.component.DebugComponent.process(DebugComponent.java:92)\n\tat > > > > > org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:432)\n\tat > > > > > org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:224)\n\tat > > org.apache.solr.core.SolrCore.execute(SolrCore.java:2893)\n\tat > > > > > org.apache.solr.servlet.HttpSolrCall.executeCoreRequest(HttpSolrCall.java:871)\n\tat > > org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:567)\n\tat > > > > > org.apache.solr.servlet.SolrDispatchFilter.dispatch(SolrDispatchFilter.java:250)\n\tat > > > > > org.apache.solr.servlet.SolrDispatchFilter.lambda$doFilter$0(SolrDispatchFilter.java:218)\n\tat > > > > > org.apache.solr.servlet.ServletUtils.traceHttpRequestExecution2(ServletUtils.java:257)\n\tat > > > > > org.apache.solr.servlet.ServletUtils.rateLimitRequest(ServletUtils.java:227)\n\tat > > > > > org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:213)\n\tat > > > > > org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:195)\n\tat > > > > > org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:210)\n\tat > > > > > org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1635)\n\tat > > > > > org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:527)\n\tat > > > > > org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:131)\n\tat > > > > > org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:578)\n\tat > > > > > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)\n\tat > > > > > org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:223)\n\tat > > > > > org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1570)\n\tat > > > > > org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:221)\n\tat > > > > > org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1384)\n\tat > > > > > org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:176)\n\tat > > > > > org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:484)\n\tat > > > > > org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1543)\n\tat > > > > > org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:174)\n\tat > > > > > org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1306)\n\tat > > > > > org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:129)\n\tat > > > > > org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:149)\n\tat > > > > > org.eclipse.jetty.server.handler.InetAccessHandler.handle(InetAccessHandler.java:228)\n\tat > > > > > org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:141)\n\tat > > > > > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)\n\tat > > > > > org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:301)\n\tat > > > > > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)\n\tat > > > > > org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:822)\n\tat > > > > > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)\n\tat > > org.eclipse.jetty.server.Server.handle(Server.java:563)\n\tat > > > > > org.eclipse.jetty.server.HttpChannel.lambda$handle$0(HttpChannel.java:505)\n\tat > > org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:762)\n\tat > > org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:497)\n\tat > > > > > org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:282)\n\tat > > org.eclipse.jetty.io > > > .AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:314)\n\tat > > org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:100)\n\tat > > org.eclipse.jetty.io > > .SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)\n\tat > > > > > org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:969)\n\tat > > > > > org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1194)\n\tat > > > > > org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1149)\n\tat > > java.base/java.lang.Thread.run(Thread.java:833)\n", > > "code": 500 > > } > > > > > > > > *Anna Ruggero* > > R&D Machine Learning / Software Engineer, Search Consultant > > e-mail: a.rugg...@sease.io > > > > > > *Sease* - Information Retrieval Applied > > Consulting | Training | Open Source > > Sease.io <http://sease.io/> > > LinkedIn <https://linkedin.com/company/sease-ltd> | Twitter > > <https://twitter.com/seaseltd> | Youtube > > <https://www.youtube.com/channel/UCDx86ZKLYNpI3gzMercM7BQ> | Github > > <https://github.com/seaseltd> > > >