From 87b6c2c8fcdc3a5f4adc3516f249af89b479d77a Mon Sep 17 00:00:00 2001 From: Alan Woodward Date: Wed, 28 Dec 2016 19:48:16 +0000 Subject: [PATCH] LUCENE-7607: FieldLeafComparator.setScorer() should throw IOException --- lucene/CHANGES.txt | 3 +++ .../apache/lucene/search/LeafFieldComparator.java | 2 +- .../lucene/search/SimpleFieldComparator.java | 2 +- .../solr/search/CollapsingQParserPlugin.java | 14 +++++++------- 4 files changed, 12 insertions(+), 9 deletions(-) diff --git a/lucene/CHANGES.txt b/lucene/CHANGES.txt index 7a118f1d8c2..35314db9505 100644 --- a/lucene/CHANGES.txt +++ b/lucene/CHANGES.txt @@ -65,6 +65,9 @@ API Changes * LUCENE-7533: Classic query parser no longer allows autoGeneratePhraseQueries to be set to true when splitOnWhitespace is false (and vice-versa). +* LUCENE-7607: LeafFieldComparator.setScorer and SimpleFieldComparator.setScorer + are declared as throwing IOException (Alan Woodward) + New features * LUCENE-5867: Added BooleanSimilarity. (Robert Muir, Adrien Grand) diff --git a/lucene/core/src/java/org/apache/lucene/search/LeafFieldComparator.java b/lucene/core/src/java/org/apache/lucene/search/LeafFieldComparator.java index 60193768c39..677639cbf09 100644 --- a/lucene/core/src/java/org/apache/lucene/search/LeafFieldComparator.java +++ b/lucene/core/src/java/org/apache/lucene/search/LeafFieldComparator.java @@ -114,6 +114,6 @@ public interface LeafFieldComparator { * * @param scorer Scorer instance that you should use to * obtain the current hit's score, if necessary. */ - void setScorer(Scorer scorer); + void setScorer(Scorer scorer) throws IOException; } diff --git a/lucene/core/src/java/org/apache/lucene/search/SimpleFieldComparator.java b/lucene/core/src/java/org/apache/lucene/search/SimpleFieldComparator.java index 3f1e6c2a7a1..a258e2489bd 100644 --- a/lucene/core/src/java/org/apache/lucene/search/SimpleFieldComparator.java +++ b/lucene/core/src/java/org/apache/lucene/search/SimpleFieldComparator.java @@ -38,5 +38,5 @@ public abstract class SimpleFieldComparator extends FieldComparator implem } @Override - public void setScorer(Scorer scorer) {} + public void setScorer(Scorer scorer) throws IOException {} } diff --git a/solr/core/src/java/org/apache/solr/search/CollapsingQParserPlugin.java b/solr/core/src/java/org/apache/solr/search/CollapsingQParserPlugin.java index f6bc18e1008..44aade5ac29 100644 --- a/solr/core/src/java/org/apache/solr/search/CollapsingQParserPlugin.java +++ b/solr/core/src/java/org/apache/solr/search/CollapsingQParserPlugin.java @@ -965,7 +965,7 @@ public class CollapsingQParserPlugin extends QParserPlugin { @Override public boolean needsScores() { return needsScores || super.needsScores(); } - public void setScorer(Scorer scorer) { + public void setScorer(Scorer scorer) throws IOException { this.collapseStrategy.setScorer(scorer); } @@ -1147,7 +1147,7 @@ public class CollapsingQParserPlugin extends QParserPlugin { @Override public boolean needsScores() { return needsScores || super.needsScores(); } - public void setScorer(Scorer scorer) { + public void setScorer(Scorer scorer) throws IOException { this.collapseStrategy.setScorer(scorer); } @@ -1523,7 +1523,7 @@ public class CollapsingQParserPlugin extends QParserPlugin { return collapsedSet; } - public void setScorer(Scorer scorer) { + public void setScorer(Scorer scorer) throws IOException { this.scorer = scorer; } @@ -1952,7 +1952,7 @@ public class CollapsingQParserPlugin extends QParserPlugin { } @Override - public void setScorer(Scorer s) { + public void setScorer(Scorer s) throws IOException { super.setScorer(s); this.compareState.setScorer(s); } @@ -2100,7 +2100,7 @@ public class CollapsingQParserPlugin extends QParserPlugin { return collapsedSet; } - public void setScorer(Scorer scorer) { + public void setScorer(Scorer scorer) throws IOException { this.scorer = scorer; } @@ -2522,7 +2522,7 @@ public class CollapsingQParserPlugin extends QParserPlugin { } @Override - public void setScorer(Scorer s) { + public void setScorer(Scorer s) throws IOException { super.setScorer(s); this.compareState.setScorer(s); } @@ -2673,7 +2673,7 @@ public class CollapsingQParserPlugin extends QParserPlugin { leafFieldComparators[clause] = fieldComparators[clause].getLeafComparator(context); } } - public void setScorer(Scorer s) { + public void setScorer(Scorer s) throws IOException { for (int clause = 0; clause < numClauses; clause++) { leafFieldComparators[clause].setScorer(s); }