Allow _count to take preference parameter. [#2698]
This commit is contained in:
parent
1e937fd5d1
commit
b53a8aff6a
|
@ -62,6 +62,9 @@ public class CountRequest extends BroadcastOperationRequest<CountRequest> {
|
|||
@Nullable
|
||||
protected String routing;
|
||||
|
||||
@Nullable
|
||||
private String preference;
|
||||
|
||||
private BytesReference querySource;
|
||||
private boolean querySourceUnsafe;
|
||||
|
||||
|
@ -220,6 +223,15 @@ public class CountRequest extends BroadcastOperationRequest<CountRequest> {
|
|||
return this;
|
||||
}
|
||||
|
||||
public CountRequest preference(String preference) {
|
||||
this.preference = preference;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String preference() {
|
||||
return this.preference;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void readFrom(StreamInput in) throws IOException {
|
||||
super.readFrom(in);
|
||||
|
|
|
@ -104,7 +104,7 @@ public class TransportCountAction extends TransportBroadcastOperationAction<Coun
|
|||
@Override
|
||||
protected GroupShardsIterator shards(ClusterState clusterState, CountRequest request, String[] concreteIndices) {
|
||||
Map<String, Set<String>> routingMap = clusterState.metaData().resolveSearchRouting(request.routing(), request.indices());
|
||||
return clusterService.operationRouting().searchShards(clusterState, request.indices(), concreteIndices, routingMap, null);
|
||||
return clusterService.operationRouting().searchShards(clusterState, request.indices(), concreteIndices, routingMap, request.preference());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -89,6 +89,7 @@ public class RestCountAction extends BaseRestHandler {
|
|||
countRequest.routing(request.param("routing"));
|
||||
countRequest.minScore(request.paramAsFloat("min_score", DEFAULT_MIN_SCORE));
|
||||
countRequest.types(splitTypes(request.param("type")));
|
||||
countRequest.preference(request.param("preference"));
|
||||
} catch (Exception e) {
|
||||
try {
|
||||
XContentBuilder builder = RestXContentBuilder.restContentBuilder(request);
|
||||
|
|
Loading…
Reference in New Issue