You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ab...@apache.org on 2017/07/13 15:38:00 UTC

[03/47] lucene-solr:jira/solr-11000: SOLR-10964: Reduce SolrIndexSearcher casting in LTRRescorer.

SOLR-10964: Reduce SolrIndexSearcher casting in LTRRescorer.


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/14ec46c7
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/14ec46c7
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/14ec46c7

Branch: refs/heads/jira/solr-11000
Commit: 14ec46c7f8fb6d766334744a884192806e8c3803
Parents: b123eba
Author: Christine Poerschke <cp...@apache.org>
Authored: Fri Jul 7 16:25:41 2017 +0100
Committer: Christine Poerschke <cp...@apache.org>
Committed: Fri Jul 7 17:37:19 2017 +0100

----------------------------------------------------------------------
 solr/CHANGES.txt                                       |  2 ++
 .../ltr/src/java/org/apache/solr/ltr/LTRRescorer.java  | 13 ++++++-------
 2 files changed, 8 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/14ec46c7/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 022a28e..c562a85 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -80,6 +80,8 @@ Other Changes
 
 * SOLR-10748: Make stream.body configurable and disabled by default (janhoy)
 
+* SOLR-10964: Reduce SolrIndexSearcher casting in LTRRescorer. (Christine Poerschke)
+
 ==================  7.0.0 ==================
 
 Versions of Major Components

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/14ec46c7/solr/contrib/ltr/src/java/org/apache/solr/ltr/LTRRescorer.java
----------------------------------------------------------------------
diff --git a/solr/contrib/ltr/src/java/org/apache/solr/ltr/LTRRescorer.java b/solr/contrib/ltr/src/java/org/apache/solr/ltr/LTRRescorer.java
index 33c9a36..59b764b 100644
--- a/solr/contrib/ltr/src/java/org/apache/solr/ltr/LTRRescorer.java
+++ b/solr/contrib/ltr/src/java/org/apache/solr/ltr/LTRRescorer.java
@@ -116,8 +116,7 @@ public class LTRRescorer extends Rescorer {
     final LTRScoringQuery.ModelWeight modelWeight = (LTRScoringQuery.ModelWeight) searcher
         .createNormalizedWeight(scoringQuery, true);
 
-    final SolrIndexSearcher solrIndexSearch = (SolrIndexSearcher) searcher;
-    scoreFeatures(solrIndexSearch, firstPassTopDocs,topN, modelWeight, hits, leaves, reranked);
+    scoreFeatures(searcher, firstPassTopDocs,topN, modelWeight, hits, leaves, reranked);
     // Must sort all documents that we reranked, and then select the top
     Arrays.sort(reranked, new Comparator<ScoreDoc>() {
       @Override
@@ -138,7 +137,7 @@ public class LTRRescorer extends Rescorer {
     return new TopDocs(firstPassTopDocs.totalHits, reranked, reranked[0].score);
   }
 
-  public void scoreFeatures(SolrIndexSearcher solrIndexSearch, TopDocs firstPassTopDocs,
+  public void scoreFeatures(IndexSearcher indexSearcher, TopDocs firstPassTopDocs,
       int topN, LTRScoringQuery.ModelWeight modelWeight, ScoreDoc[] hits, List<LeafReaderContext> leaves,
       ScoreDoc[] reranked) throws IOException {
 
@@ -183,8 +182,8 @@ public class LTRRescorer extends Rescorer {
         reranked[hitUpto] = hit;
         // if the heap is not full, maybe I want to log the features for this
         // document
-        if (featureLogger != null) {
-          featureLogger.log(hit.doc, scoringQuery, solrIndexSearch,
+        if (featureLogger != null && indexSearcher instanceof SolrIndexSearcher) {
+          featureLogger.log(hit.doc, scoringQuery, (SolrIndexSearcher)indexSearcher,
               modelWeight.getFeaturesInfo());
         }
       } else if (hitUpto == topN) {
@@ -200,8 +199,8 @@ public class LTRRescorer extends Rescorer {
         if (hit.score > reranked[0].score) {
           reranked[0] = hit;
           heapAdjust(reranked, topN, 0);
-          if (featureLogger != null) {
-            featureLogger.log(hit.doc, scoringQuery, solrIndexSearch,
+          if (featureLogger != null && indexSearcher instanceof SolrIndexSearcher) {
+            featureLogger.log(hit.doc, scoringQuery, (SolrIndexSearcher)indexSearcher,
                 modelWeight.getFeaturesInfo());
           }
         }