Skip to content

Commit d827124

Browse files
committed
[HLRC] Send min_score as query string parameter to the count API (#46829)
Prior to this commit min_score was sent as request body parameter (via SearchSourceBuilder), which is not possible in the count api. Similar to #46474
1 parent add7148 commit d827124

File tree

3 files changed

+11
-3
lines changed

3 files changed

+11
-3
lines changed

client/rest-high-level/src/main/java/org/elasticsearch/client/RequestConverters.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -501,6 +501,9 @@ static Request count(CountRequest countRequest) throws IOException {
501501
if (countRequest.terminateAfter() != 0){
502502
params.withTerminateAfter(countRequest.terminateAfter());
503503
}
504+
if (countRequest.minScore() != null){
505+
params.putParam("min_score", String.valueOf(countRequest.minScore()));
506+
}
504507
request.addParameters(params.asMap());
505508
request.setEntity(createEntity(countRequest.source(), REQUEST_BODY_CONTENT_TYPE));
506509
return request;

client/rest-high-level/src/main/java/org/elasticsearch/client/core/CountRequest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ public final class CountRequest extends ActionRequest implements IndicesRequest.
4444
private SearchSourceBuilder searchSourceBuilder;
4545
private IndicesOptions indicesOptions = DEFAULT_INDICES_OPTIONS;
4646
private int terminateAfter = SearchContext.DEFAULT_TERMINATE_AFTER;
47+
private Float minScore;
4748

4849
public CountRequest() {
4950
this.searchSourceBuilder = new SearchSourceBuilder();
@@ -158,11 +159,11 @@ public String[] indices() {
158159
}
159160

160161
public Float minScore() {
161-
return this.searchSourceBuilder.minScore();
162+
return minScore;
162163
}
163164

164165
public CountRequest minScore(Float minScore) {
165-
this.searchSourceBuilder.minScore(minScore);
166+
this.minScore = minScore;
166167
return this;
167168
}
168169

client/rest-high-level/src/test/java/org/elasticsearch/client/RequestConvertersTests.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1234,10 +1234,14 @@ private static void setRandomCountParams(CountRequest countRequest,
12341234
countRequest.preference(randomAlphaOfLengthBetween(3, 10));
12351235
expectedParams.put("preference", countRequest.preference());
12361236
}
1237-
if (randomBoolean()){
1237+
if (randomBoolean()) {
12381238
countRequest.terminateAfter(randomIntBetween(0, Integer.MAX_VALUE));
12391239
expectedParams.put("terminate_after", String.valueOf(countRequest.terminateAfter()));
12401240
}
1241+
if (randomBoolean()) {
1242+
countRequest.minScore((float) randomIntBetween(1, 10));
1243+
expectedParams.put("min_score", String.valueOf(countRequest.minScore()));
1244+
}
12411245
}
12421246

12431247
public void testMultiSearch() throws IOException {

0 commit comments

Comments
 (0)