I am using MultiSearchRequest
to execute multiple search queries using SearchRequest
as below:
MultiSearchRequest request = new MultiSearchRequest(); SearchRequest searchRequest = new SearchRequest(IndexName.MYINDEX.getValue()); searchRequest.source(sourceBuilder); request.add(searchRequest);//Mutliple search queries are added here in a loop.
My question is when i call:
MultiSearchResponse response = client.msearch(request, RequestOptions.DEFAULT);
can i expect to get response in the same sequence as the requests were added OR they will be at random. Currently i am assuming it will be returning response in sequence as they were added but in PARALLEL.
Advertisement
Answer
Multi Search API in short YES
Response body
(array) Includes the search response and status code for each search request matching its order in the original multi search request. If there was a complete failure for a specific search request, an object with error message and corresponding status code will be returned in place of the actual search response.