Manybubbles has uploaded a new change for review.
https://gerrit.wikimedia.org/r/123866
Change subject: Fix boost_before for top_scoring
......................................................................
Fix boost_before for top_scoring
Change-Id: I64c08770aabc901d4ea06bcfe127ddbab417f684
---
M
experimental-highlighter-elasticsearch-plugin/src/main/java/org/elasticsearch/search/highlight/FieldWrapper.java
M
experimental-highlighter-elasticsearch-plugin/src/test/java/org/elasticsearch/highlight/ExperimentalHighlighterTest.java
2 files changed, 18 insertions(+), 6 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/search/highlighter
refs/changes/66/123866/1
diff --git
a/experimental-highlighter-elasticsearch-plugin/src/main/java/org/elasticsearch/search/highlight/FieldWrapper.java
b/experimental-highlighter-elasticsearch-plugin/src/main/java/org/elasticsearch/search/highlight/FieldWrapper.java
index 6e95b94..e421530 100644
---
a/experimental-highlighter-elasticsearch-plugin/src/main/java/org/elasticsearch/search/highlight/FieldWrapper.java
+++
b/experimental-highlighter-elasticsearch-plugin/src/main/java/org/elasticsearch/search/highlight/FieldWrapper.java
@@ -140,9 +140,12 @@
HitEnum e = buildHitEnumForSource();
FieldOptions options = context.field.fieldOptions();
if (!options.scoreOrdered()) {
- // If we're not score ordered then there isn't any point in
changing
- // the enum's weights.
- return e;
+ Boolean topScoring =
(Boolean)executionContext.getOption("top_scoring");
+ if (topScoring == null || !topScoring) {
+ // If we don't pay attention to scoring then there is no point
+ // is messing with the weights.
+ return e;
+ }
}
// TODO move this up so we don't have to redo it per matched_field
@SuppressWarnings("unchecked")
diff --git
a/experimental-highlighter-elasticsearch-plugin/src/test/java/org/elasticsearch/highlight/ExperimentalHighlighterTest.java
b/experimental-highlighter-elasticsearch-plugin/src/test/java/org/elasticsearch/highlight/ExperimentalHighlighterTest.java
index bff0eb9..79a15d5 100644
---
a/experimental-highlighter-elasticsearch-plugin/src/test/java/org/elasticsearch/highlight/ExperimentalHighlighterTest.java
+++
b/experimental-highlighter-elasticsearch-plugin/src/test/java/org/elasticsearch/highlight/ExperimentalHighlighterTest.java
@@ -328,10 +328,9 @@
indexTestData("The quick brown fox jumped over the lazy test. And
some other test. " +
"Junk junk junk junk junk junk junk junk junk junk junk test
test test.");
-
SearchRequestBuilder search = testSearch(
boolQuery().should(termQuery("test",
"test")).should(termQuery("test", "foo")))
- .addHighlightedField(new
HighlightBuilder.Field("test").fragmenter("sentence").numOfFragments(3))
+ .addHighlightedField(new
HighlightBuilder.Field("test").fragmenter("sentence").numOfFragments(2))
.setHighlighterOrder("score");
Map<String, Object> options = new HashMap<String, Object>();
options.put("boost_before", ImmutableMap.of("10", 4, "20", 2f));
@@ -341,7 +340,17 @@
assertHighlight(response, 0, "test", 0, equalTo("The quick brown
fox jumped over the lazy <em>test</em>. "));
assertHighlight(response, 0, "test", 1, equalTo("Junk junk junk
junk junk junk junk " +
"junk junk junk junk <em>test</em> <em>test</em>
<em>test</em>."));
- assertHighlight(response, 0, "test", 2, equalTo("And some other
<em>test</em>. "));
+ }
+
+ // Should also apply when sorting by source using top_scoring
+ search.setHighlighterOrder("source");
+ options.put("top_scoring", true);
+ for (String hitSource : HIT_SOURCES) {
+ options.put("hit_source", hitSource);
+ SearchResponse response =
search.setHighlighterOptions(options).get();
+ assertHighlight(response, 0, "test", 0, equalTo("The quick brown
fox jumped over the lazy <em>test</em>. "));
+ assertHighlight(response, 0, "test", 1, equalTo("Junk junk junk
junk junk junk junk " +
+ "junk junk junk junk <em>test</em> <em>test</em>
<em>test</em>."));
}
}
--
To view, visit https://gerrit.wikimedia.org/r/123866
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I64c08770aabc901d4ea06bcfe127ddbab417f684
Gerrit-PatchSet: 1
Gerrit-Project: search/highlighter
Gerrit-Branch: master
Gerrit-Owner: Manybubbles <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits