Skip to content

Commit 3ee20ed

Browse files
committed
Add another test
1 parent fd396d9 commit 3ee20ed

File tree

3 files changed

+62
-4
lines changed

3 files changed

+62
-4
lines changed

test/framework/src/main/java/org/elasticsearch/search/rank/rerank/AbstractRerankerIT.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -496,7 +496,7 @@ public void testRankFeaturePhaseCoordinatorThrowingAllShardsFail() throws Except
496496
assertNoOpenContext(indexName);
497497
}
498498

499-
private void assertNoOpenContext(final String indexName) throws Exception {
499+
protected void assertNoOpenContext(final String indexName) throws Exception {
500500
assertBusy(
501501
() -> assertThat(indicesAdmin().prepareStats(indexName).get().getTotal().getSearch().getOpenContexts(), equalTo(0L)),
502502
1,

x-pack/plugin/inference/src/test/java/org/elasticsearch/xpack/inference/rank/textsimilarity/TextSimilarityRankMultiNodeTests.java

Lines changed: 59 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,11 @@
1515
import java.util.Collection;
1616
import java.util.List;
1717

18+
import static org.elasticsearch.index.query.QueryBuilders.boolQuery;
19+
import static org.elasticsearch.index.query.QueryBuilders.matchQuery;
20+
import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertHitCount;
21+
import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertNoFailuresAndResponse;
22+
1823
public class TextSimilarityRankMultiNodeTests extends AbstractRerankerIT {
1924

2025
private static final String inferenceId = "inference-id";
@@ -28,13 +33,22 @@ protected RankBuilder getRankBuilder(int rankWindowSize, String rankFeatureField
2833

2934
@Override
3035
protected RankBuilder getThrowingRankBuilder(int rankWindowSize, String rankFeatureField, ThrowingRankBuilderType type) {
36+
return getThrowingRankBuilder(rankWindowSize, rankFeatureField, type, false);
37+
}
38+
39+
protected RankBuilder getThrowingRankBuilder(
40+
int rankWindowSize,
41+
String rankFeatureField,
42+
ThrowingRankBuilderType type,
43+
boolean failuresAllowed
44+
) {
3145
return new TextSimilarityTestPlugin.ThrowingMockRequestActionBasedRankBuilder(
3246
rankWindowSize,
3347
rankFeatureField,
3448
inferenceId,
3549
inferenceText,
3650
minScore,
37-
false,
51+
failuresAllowed,
3852
type.name()
3953
);
4054
}
@@ -52,6 +66,50 @@ public void testQueryPhaseCoordinatorThrowingAllShardsFail() throws Exception {
5266
// no-op
5367
}
5468

69+
public void testRerankerAllowedFailureNoExceptions() throws Exception {
70+
final String indexName = "test_index";
71+
final String rankFeatureField = "rankFeatureField";
72+
final String searchField = "searchField";
73+
final int rankWindowSize = 10;
74+
75+
createIndex(indexName);
76+
indexRandom(
77+
true,
78+
prepareIndex(indexName).setId("1").setSource(rankFeatureField, 0.1, searchField, "A"),
79+
prepareIndex(indexName).setId("2").setSource(rankFeatureField, 0.2, searchField, "B"),
80+
prepareIndex(indexName).setId("3").setSource(rankFeatureField, 0.3, searchField, "C"),
81+
prepareIndex(indexName).setId("4").setSource(rankFeatureField, 0.4, searchField, "D"),
82+
prepareIndex(indexName).setId("5").setSource(rankFeatureField, 0.5, searchField, "E")
83+
);
84+
85+
assertNoFailuresAndResponse(
86+
prepareSearch().setQuery(
87+
boolQuery().should(matchQuery(searchField, "A"))
88+
.should(matchQuery(searchField, "B"))
89+
.should(matchQuery(searchField, "C"))
90+
.should(matchQuery(searchField, "D"))
91+
.should(matchQuery(searchField, "E"))
92+
)
93+
.setRankBuilder(
94+
getThrowingRankBuilder(
95+
rankWindowSize,
96+
rankFeatureField,
97+
ThrowingRankBuilderType.THROWING_RANK_FEATURE_PHASE_COORDINATOR_CONTEXT,
98+
true
99+
)
100+
)
101+
.addFetchField(searchField)
102+
.setTrackTotalHits(true)
103+
.setAllowPartialSearchResults(true)
104+
.setSize(10),
105+
response -> {
106+
// just check it returns 5 documents, the order will be random due to not getting reranked
107+
assertHitCount(response, 5L);
108+
}
109+
);
110+
assertNoOpenContext(indexName);
111+
}
112+
55113
@Override
56114
protected boolean shouldCheckScores() {
57115
return false;

x-pack/plugin/inference/src/test/java/org/elasticsearch/xpack/inference/rank/textsimilarity/TextSimilarityTestPlugin.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -174,10 +174,10 @@ public ThrowingMockRequestActionBasedRankBuilder(
174174
String inferenceId,
175175
String inferenceText,
176176
Float minScore,
177-
boolean lenient,
177+
boolean failuresAllowed,
178178
String throwingType
179179
) {
180-
super(field, inferenceId, inferenceText, rankWindowSize, minScore, lenient);
180+
super(field, inferenceId, inferenceText, rankWindowSize, minScore, failuresAllowed);
181181
this.throwingRankBuilderType = AbstractRerankerIT.ThrowingRankBuilderType.valueOf(throwingType);
182182
}
183183

0 commit comments

Comments
 (0)