Skip to content

Commit 53d801c

Browse files
committed
\#49566 Fix non-deterministic sort order in testHighlightingWithKeywordIgnoreBoundaryScanner
1 parent 44e9455 commit 53d801c

File tree

1 file changed

+17
-3
lines changed

1 file changed

+17
-3
lines changed

server/src/test/java/org/elasticsearch/search/fetch/subphase/highlight/HighlighterSearchIT.java

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@
5757
import org.elasticsearch.search.builder.SearchSourceBuilder;
5858
import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder.BoundaryScannerType;
5959
import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder.Field;
60+
import org.elasticsearch.search.sort.SortBuilders;
6061
import org.elasticsearch.search.sort.SortOrder;
6162
import org.elasticsearch.test.ESIntegTestCase;
6263
import org.elasticsearch.test.InternalSettingsPlugin;
@@ -129,20 +130,33 @@ public void testHighlightingWithKeywordIgnoreBoundaryScanner() throws IOExceptio
129130
.startObject("tags")
130131
.field("type", "keyword")
131132
.endObject()
133+
.startObject("sort")
134+
.field("type", "long")
135+
.endObject()
132136
.endObject().endObject();
133137
mappings.endObject();
134138
assertAcked(prepareCreate("test")
135139
.addMapping("type", mappings));
136140
client().prepareIndex("test", "_doc").setId("1")
137-
.setSource(jsonBuilder().startObject().array("tags", "foo bar", "foo bar", "foo bar", "foo baz").endObject())
141+
.setSource(jsonBuilder()
142+
.startObject()
143+
.array("tags", "foo bar", "foo bar", "foo bar", "foo baz")
144+
.field("sort", 1)
145+
.endObject())
138146
.get();
139147
client().prepareIndex("test", "_doc").setId("2")
140-
.setSource(jsonBuilder().startObject().array("tags", "foo baz", "foo baz", "foo baz", "foo bar").endObject())
148+
.setSource(jsonBuilder()
149+
.startObject()
150+
.array("tags", "foo baz", "foo baz", "foo baz", "foo bar")
151+
.field("sort", 2)
152+
.endObject())
141153
.get();
142154
refresh();
143155

144156
for (BoundaryScannerType scanner : BoundaryScannerType.values()) {
145-
SearchResponse search = client().prepareSearch().setQuery(matchQuery("tags", "foo bar"))
157+
SearchResponse search = client().prepareSearch()
158+
.addSort(SortBuilders.fieldSort("sort"))
159+
.setQuery(matchQuery("tags", "foo bar"))
146160
.highlighter(new HighlightBuilder().field(new Field("tags")).numOfFragments(2).boundaryScannerType(scanner)).get();
147161
assertHighlight(search, 0, "tags", 0, 2, equalTo("<em>foo bar</em>"));
148162
assertHighlight(search, 0, "tags", 1, 2, equalTo("<em>foo bar</em>"));

0 commit comments

Comments
 (0)