-
Type:
Bug
-
Status: Resolved
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 8.0
-
Fix Version/s: 8.8, master (9.0)
-
Component/s: None
-
Labels:None
Score returned in search request is original score and not reranked score post the changes in https://issues.apache.org/jira/browse/LUCENE-8412.
Specifically -
if (cmd.getSort() != null && query instanceof RankQuery == false && (cmd.getFlags() & GET_SCORES) != 0)
{ TopFieldCollector.populateScores(topDocs.scoreDocs, this, query); }in SolrIndexSearcher.java recomputes the score but outputs only the original score and not the reranked score.
The issue is cmd.getQuery() is a type of RankQuery but the "query" variable is a boolean query and probably replacing query with cmd.getQuery() should be the right fix for this so that the score is not overriden for rerank queries