Adding Christine and Diego to the loop if they missed this. Thanks Anna for raising.
Cheers -------------------------- Alessandro Benedetti Apache Lucene/Solr Committer Director, R&D Software Engineer, Search Consultant www.sease.io On Wed, 10 Nov 2021 at 16:41, Anna Ruggero <[email protected]> wrote: > Hi all, > > I was looking at the *org.apache.solr.ltr.LTRRescorer#scoreFeatures * > method. > Since we are using reranking applied to some topN documents (rerankDocs > parameter) I think that this block of code in > *org.apache.solr.ltr.LTRRescorer#scoreSingleHit > *will never be accessed: > > if (hitUpto >= topN) { > // once that heap is ready, if the score of this document is lower that > // the minimum > // i don't want to log the feature. Otherwise I replace it with the > // minimum and fix the > // heap. > if (hit.score > reranked[0].score) { > reranked[0] = hit; > heapAdjust(reranked, topN, 0); > if (featureLogger != null && indexSearcher instanceof SolrIndexSearcher) { > featureLogger.log(hit.doc, rerankingQuery, (SolrIndexSearcher) > indexSearcher, > modelWeight.getFeaturesInfo()); > } > } > > Since we are reranking the topN documents. the *hits.length* in the > scoreFeatures method is always *equal* to the *topN* variable. > Therefore, since *hitUpto* is going from *0* to *hits.length -1*, we will > never have *hitUpto >= topN* > > Is there any condition I am missing? > Couldn't this piece of code be removed? > > Thank you, > Anna >
