mirror of
https://github.com/honeymoose/OpenSearch.git
synced 2025-02-23 21:38:15 +00:00
HLRC multisearchTemplate forgot params (#46492)
Since 7.3, the request converter for multiSearchTemplate would silently not set the two request parameters `typed_keys` and `max_concurrent_searches`. Closes #46488
This commit is contained in:
parent
9fce5a99d8
commit
7125c101e6
@ -484,6 +484,7 @@ final class RequestConverters {
|
|||||||
if (multiSearchTemplateRequest.maxConcurrentSearchRequests() != MultiSearchRequest.MAX_CONCURRENT_SEARCH_REQUESTS_DEFAULT) {
|
if (multiSearchTemplateRequest.maxConcurrentSearchRequests() != MultiSearchRequest.MAX_CONCURRENT_SEARCH_REQUESTS_DEFAULT) {
|
||||||
params.putParam("max_concurrent_searches", Integer.toString(multiSearchTemplateRequest.maxConcurrentSearchRequests()));
|
params.putParam("max_concurrent_searches", Integer.toString(multiSearchTemplateRequest.maxConcurrentSearchRequests()));
|
||||||
}
|
}
|
||||||
|
request.addParameters(params.asMap());
|
||||||
|
|
||||||
XContent xContent = REQUEST_BODY_CONTENT_TYPE.xContent();
|
XContent xContent = REQUEST_BODY_CONTENT_TYPE.xContent();
|
||||||
byte[] source = MultiSearchTemplateRequest.writeMultiLineFormat(multiSearchTemplateRequest, xContent);
|
byte[] source = MultiSearchTemplateRequest.writeMultiLineFormat(multiSearchTemplateRequest, xContent);
|
||||||
|
@ -1407,12 +1407,20 @@ public class RequestConvertersTests extends ESTestCase {
|
|||||||
multiSearchTemplateRequest.add(searchTemplateRequest);
|
multiSearchTemplateRequest.add(searchTemplateRequest);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Map<String, String> expectedParams = new HashMap<>();
|
||||||
|
if (randomBoolean()) {
|
||||||
|
multiSearchTemplateRequest.maxConcurrentSearchRequests(randomIntBetween(1,10));
|
||||||
|
expectedParams.put("max_concurrent_searches", Integer.toString(multiSearchTemplateRequest.maxConcurrentSearchRequests()));
|
||||||
|
}
|
||||||
|
expectedParams.put(RestSearchAction.TYPED_KEYS_PARAM, "true");
|
||||||
|
|
||||||
Request multiRequest = RequestConverters.multiSearchTemplate(multiSearchTemplateRequest);
|
Request multiRequest = RequestConverters.multiSearchTemplate(multiSearchTemplateRequest);
|
||||||
|
|
||||||
assertEquals(HttpPost.METHOD_NAME, multiRequest.getMethod());
|
assertEquals(HttpPost.METHOD_NAME, multiRequest.getMethod());
|
||||||
assertEquals("/_msearch/template", multiRequest.getEndpoint());
|
assertEquals("/_msearch/template", multiRequest.getEndpoint());
|
||||||
List<SearchTemplateRequest> searchRequests = multiSearchTemplateRequest.requests();
|
List<SearchTemplateRequest> searchRequests = multiSearchTemplateRequest.requests();
|
||||||
assertEquals(numSearchRequests, searchRequests.size());
|
assertEquals(numSearchRequests, searchRequests.size());
|
||||||
|
assertEquals(expectedParams, multiRequest.getParameters());
|
||||||
|
|
||||||
HttpEntity actualEntity = multiRequest.getEntity();
|
HttpEntity actualEntity = multiRequest.getEntity();
|
||||||
byte[] expectedBytes = MultiSearchTemplateRequest.writeMultiLineFormat(multiSearchTemplateRequest, XContentType.JSON.xContent());
|
byte[] expectedBytes = MultiSearchTemplateRequest.writeMultiLineFormat(multiSearchTemplateRequest, XContentType.JSON.xContent());
|
||||||
|
Loading…
x
Reference in New Issue
Block a user