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>

Reply via email to