Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
4a1cbd9
Create PIT API (#2745)
bharath-techie May 19, 2022
25cc2b1
Delete PIT changes
bharath-techie May 19, 2022
724dffc
Delete PIT changes - adding tests for invalid ids
bharath-techie May 20, 2022
e482053
Addressing comments
bharath-techie May 24, 2022
233b15d
Addressing comments
bharath-techie May 24, 2022
28d8605
Addressing comments - changing delete pit response structure
bharath-techie Jun 17, 2022
e06bac7
Addressing comments
bharath-techie Jun 20, 2022
22eb286
Bump reactor-netty-core from 1.0.16 to 1.0.19 in /plugins/repository-…
dependabot[bot] May 18, 2022
f5fc840
[Type removal] _type removal from mocked responses of scroll hit test…
dreamer-89 May 18, 2022
f14e041
[Type removal] Remove _type deprecation from script and conditional p…
dreamer-89 May 18, 2022
2ffc292
[Type removal] Remove _type from _bulk yaml test, scripts, unused con…
dreamer-89 May 18, 2022
833010a
Fix Lucene-snapshots repo for jdk 17. (#3396)
mch2 May 19, 2022
44ceeed
Replace internal usages of 'master' term in 'server/src/internalClust…
May 19, 2022
a70edc6
[REMOVE] Cleanup deprecated thread pool types (FIXED_AUTO_QUEUE_SIZE)…
reta May 19, 2022
326a1a8
[Type removal] _type removal from tests of yaml tests (#3406)
dreamer-89 May 20, 2022
c5a3e01
Add release notes for version 2.0.0 (#3410)
adnapibar May 20, 2022
72a65ae
[Upgrade] Lucene-9.2.0-snapshot-ba8c3a8 (#3416)
nknize May 20, 2022
cd82593
Fix release notes for 2.0.0-rc1 version (#3418)
adnapibar May 20, 2022
8cae3a3
Bump version 2.1 to Lucene 9.2 after upgrade (#3424)
nknize May 23, 2022
c0f829c
Bump com.gradle.enterprise from 3.10 to 3.10.1 (#3425)
dependabot[bot] May 23, 2022
1f1526b
Bump reactor-core from 3.4.17 to 3.4.18 in /plugins/repository-azure …
dependabot[bot] May 23, 2022
3a9b37a
Bump gax-httpjson from 0.101.0 to 0.103.1 in /plugins/repository-gcs …
dependabot[bot] May 23, 2022
146b334
[segment replication]Introducing common Replication interfaces for se…
Poojita-Raj May 23, 2022
f0d2033
[Type removal] Remove type from BulkRequestParser (#3423)
dreamer-89 May 23, 2022
87d354a
Adding CheckpointRefreshListener to trigger when Segment replication …
Rishikesh1159 May 24, 2022
052e960
Add a new Engine implementation for replicas with segment replication…
mch2 May 24, 2022
1d9e369
Rename master to cluster_manager in the XContent Parser of ClusterHea…
May 25, 2022
6251f27
Bump hadoop-minicluster in /test/fixtures/hdfs-fixture (#3359)
dependabot[bot] May 25, 2022
d8a64e7
Bump avro from 1.10.2 to 1.11.0 in /plugins/repository-hdfs (#3358)
dependabot[bot] May 25, 2022
12bf60f
Fix testSetAdditionalRolesCanAddDeprecatedMasterRole() by removing th…
May 25, 2022
9c16457
Replace internal usages of 'master' term in 'server/src/test' directo…
May 25, 2022
decf4c2
Removing unused method from TransportSearchAction (#3437)
jainankitk May 26, 2022
1535c67
Set term vector flags to false for ._index_prefix field (#1901). (#3119)
vpehkone May 26, 2022
3dd7121
[BUG] Fixing org.opensearch.monitor.os.OsProbeTests > testLogWarnCpuM…
reta May 27, 2022
31c5be5
[Segment Replication] Add SegmentReplicationTargetService to orchestr…
mch2 May 27, 2022
1e99e03
Bump azure-core-http-netty from 1.11.9 to 1.12.0 in /plugins/reposito…
dependabot[bot] May 30, 2022
5cefd89
Update to Apache Lucene 9.2 (#3477)
reta May 30, 2022
072b759
Bump protobuf-java from 3.20.1 to 3.21.1 in /plugins/repository-hdfs …
dependabot[bot] May 31, 2022
a061df6
[Upgrade] Lucene-9.3.0-snapshot-823df23 (#3478)
nknize May 31, 2022
f080f26
Filter out invalid URI and HTTP method in the error message of no han…
Jun 2, 2022
9de83e7
Support use of IRSA for repository-s3 plugin credentials (#3475)
reta Jun 2, 2022
c626043
Bump google-auth-library-oauth2-http from 0.20.0 to 1.7.0 in /plugins…
dependabot[bot] Jun 2, 2022
e0c1cf6
[Segment Replication] Added source-side classes for orchestrating rep…
kartg Jun 3, 2022
bd5a004
[Dependency upgrade] google-oauth-client to 1.33.3 (#3500)
dreamer-89 Jun 3, 2022
0b4a4f4
move bash flag to set statement (#3494)
shdubsh Jun 3, 2022
01c01ef
Support use of IRSA for repository-s3 plugin credentials: added YAML …
reta Jun 6, 2022
e8d7cab
Bump azure-storage-common from 12.15.0 to 12.16.0 in /plugins/reposit…
dependabot[bot] Jun 6, 2022
1b5f993
Bump google-oauth-client from 1.33.3 to 1.34.0 in /plugins/discovery-…
dependabot[bot] Jun 6, 2022
74eda2a
Fix the support of RestClient Node Sniffer for version 2.x and update…
Jun 6, 2022
81d71d2
Bump com.diffplug.spotless from 6.6.1 to 6.7.0 (#3513)
dependabot[bot] Jun 7, 2022
43c48ca
Bump guava from 18.0 to 23.0 in /plugins/ingest-attachment (#3357)
dependabot[bot] Jun 8, 2022
8096fc7
Added bwc version 2.0.1 (#3452)
opensearch-trigger-bot[bot] Jun 8, 2022
3a3d513
Add release notes for 1.3.3 (#3549)
xuezhou25 Jun 9, 2022
2f2e1ca
[Upgrade] Lucene-9.3.0-snapshot-b7231bb (#3537)
nknize Jun 9, 2022
76149a0
[Remote Store] Upload segments to remote store post refresh (#3460)
sachinpkale Jun 10, 2022
50387bb
Fixing VerifyVersionConstantsIT test failure (#3574)
reta Jun 13, 2022
88509d5
Bump jettison from 1.4.1 to 1.5.0 in /plugins/discovery-azure-classic…
dependabot[bot] Jun 14, 2022
56875ff
Bump google-api-services-storage from v1-rev20200814-1.30.10 to v1-re…
dependabot[bot] Jun 14, 2022
0263980
Add flat_skew setting to node overload decider (#3563)
imRishN Jun 14, 2022
e550402
Bump xmlbeans from 5.0.3 to 5.1.0 in /plugins/ingest-attachment (#3572)
dependabot[bot] Jun 14, 2022
5daa3a7
Bump google-oauth-client from 1.34.0 to 1.34.1 in /plugins/discovery-…
dependabot[bot] Jun 14, 2022
f933133
Fix for bug showing incorrect awareness attributes count in Awareness…
anshu1106 Jun 14, 2022
17584c5
Added bwc version 1.3.4 (#3552)
opensearch-trigger-bot[bot] Jun 14, 2022
f6c1629
Support dynamic node role (#3436)
ylwu-amzn Jun 14, 2022
a4aacdc
Rename package 'o.o.action.support.master' to 'o.o.action.support.clu…
Jun 15, 2022
677dd7c
Fixing flakiness of ShuffleForcedMergePolicyTests (#3591)
reta Jun 15, 2022
6c1a18a
Deprecate classes in org.opensearch.action.support.master (#3593)
Jun 15, 2022
688e795
Add release notes for version 2.0.1 (#3595)
kotwanikunal Jun 15, 2022
9494527
Fix NPE when minBound/maxBound is not set before being called. (#3605)
GeorgeAp Jun 16, 2022
5b3a164
Added bwc version 2.0.2 (#3613)
opensearch-trigger-bot[bot] Jun 16, 2022
bc3dffb
Fix false positive query timeouts due to using cached time (#3454)
aabukhalil Jun 17, 2022
75b86b9
Fix random gradle check failure issue 3584. (#3627)
mch2 Jun 17, 2022
6200228
Merge branch 'feature/point_in_time' of https://github.com/opensearch…
bharath-techie Jun 20, 2022
c3f4730
Re-adding code which was removed
bharath-techie Jun 20, 2022
93f8db7
Addressing comments - adding tests
bharath-techie Jun 24, 2022
6b71c40
Merge branch 'main' of https://github.com/opensearch-project/OpenSear…
bharath-techie Jun 27, 2022
20e5216
resolving conflicts
bharath-techie Jun 27, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,8 @@
import org.opensearch.action.get.MultiGetRequest;
import org.opensearch.action.index.IndexRequest;
import org.opensearch.action.search.ClearScrollRequest;
import org.opensearch.action.search.CreatePitRequest;
import org.opensearch.action.search.DeletePitRequest;
import org.opensearch.action.search.MultiSearchRequest;
import org.opensearch.action.search.SearchRequest;
import org.opensearch.action.search.SearchScrollRequest;
Expand Down Expand Up @@ -92,6 +94,7 @@
import org.opensearch.index.reindex.ReindexRequest;
import org.opensearch.index.reindex.UpdateByQueryRequest;
import org.opensearch.index.seqno.SequenceNumbers;
import org.opensearch.rest.action.search.RestCreatePitAction;
import org.opensearch.rest.action.search.RestSearchAction;
import org.opensearch.script.mustache.MultiSearchTemplateRequest;
import org.opensearch.script.mustache.SearchTemplateRequest;
Expand Down Expand Up @@ -433,9 +436,15 @@ static void addSearchRequestParams(Params params, SearchRequest searchRequest) {
params.putParam(RestSearchAction.TYPED_KEYS_PARAM, "true");
params.withRouting(searchRequest.routing());
params.withPreference(searchRequest.preference());
params.withIndicesOptions(searchRequest.indicesOptions());
if (searchRequest.pointInTimeBuilder() == null) {
params.withIndicesOptions(searchRequest.indicesOptions());
}
params.withSearchType(searchRequest.searchType().name().toLowerCase(Locale.ROOT));
params.putParam("ccs_minimize_roundtrips", Boolean.toString(searchRequest.isCcsMinimizeRoundtrips()));
if (searchRequest.pointInTimeBuilder() != null) {
params.putParam("ccs_minimize_roundtrips", "false");
} else {
params.putParam("ccs_minimize_roundtrips", Boolean.toString(searchRequest.isCcsMinimizeRoundtrips()));
}
if (searchRequest.getPreFilterShardSize() != null) {
params.putParam("pre_filter_shard_size", Integer.toString(searchRequest.getPreFilterShardSize()));
}
Expand All @@ -458,6 +467,28 @@ static Request searchScroll(SearchScrollRequest searchScrollRequest) throws IOEx
return request;
}

static Request createPit(CreatePitRequest createPitRequest) throws IOException {
Params params = new Params();
params.putParam(RestCreatePitAction.ALLOW_PARTIAL_PIT_CREATION, Boolean.toString(createPitRequest.shouldAllowPartialPitCreation()));
params.putParam(RestCreatePitAction.KEEP_ALIVE, createPitRequest.getKeepAlive());
params.withIndicesOptions(createPitRequest.indicesOptions());
Request request = new Request(HttpPost.METHOD_NAME, endpoint(createPitRequest.indices(), "_search/point_in_time"));
request.addParameters(params.asMap());
request.setEntity(createEntity(createPitRequest, REQUEST_BODY_CONTENT_TYPE));
return request;
}

static Request deletePit(DeletePitRequest deletePitRequest) throws IOException {
Request request = new Request(HttpDelete.METHOD_NAME, "/_search/point_in_time");
request.setEntity(createEntity(deletePitRequest, REQUEST_BODY_CONTENT_TYPE));
return request;
}

static Request deleteAllPits(DeletePitRequest deletePitRequest) {
Request request = new Request(HttpDelete.METHOD_NAME, "/_search/point_in_time/_all");
return request;
}

static Request clearScroll(ClearScrollRequest clearScrollRequest) throws IOException {
Request request = new Request(HttpDelete.METHOD_NAME, "/_search/scroll");
request.setEntity(createEntity(clearScrollRequest, REQUEST_BODY_CONTENT_TYPE));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,10 @@
import org.opensearch.action.index.IndexResponse;
import org.opensearch.action.search.ClearScrollRequest;
import org.opensearch.action.search.ClearScrollResponse;
import org.opensearch.action.search.CreatePitRequest;
import org.opensearch.action.search.CreatePitResponse;
import org.opensearch.action.search.DeletePitRequest;
import org.opensearch.action.search.DeletePitResponse;
import org.opensearch.action.search.MultiSearchRequest;
import org.opensearch.action.search.MultiSearchResponse;
import org.opensearch.action.search.SearchRequest;
Expand Down Expand Up @@ -1256,6 +1260,126 @@ public final Cancellable scrollAsync(
);
}

/**
* Create PIT context using create PIT API
*
* @param createPitRequest the request
* @param options the request options (e.g. headers), use {@link RequestOptions#DEFAULT} if nothing needs to be customized
* @return the response
*/
public final CreatePitResponse createPit(CreatePitRequest createPitRequest, RequestOptions options) throws IOException {
return performRequestAndParseEntity(
createPitRequest,
RequestConverters::createPit,
options,
CreatePitResponse::fromXContent,
emptySet()
);
}

/**
* Asynchronously Create PIT context using create PIT API
*
* @param createPitRequest the request
* @param options the request options (e.g. headers), use {@link RequestOptions#DEFAULT} if nothing needs to be customized
* @param listener the listener to be notified upon request completion
* @return the response
*/
public final Cancellable createPitAsync(
CreatePitRequest createPitRequest,
RequestOptions options,
ActionListener<CreatePitResponse> listener
) {
return performRequestAsyncAndParseEntity(
createPitRequest,
RequestConverters::createPit,
options,
CreatePitResponse::fromXContent,
listener,
emptySet()
);
}

/**
* Delete point in time searches using delete PIT API
*
* @param deletePitRequest the request
* @param options the request options (e.g. headers), use {@link RequestOptions#DEFAULT} if nothing needs to be customized
* @return the response
*/
public final DeletePitResponse deletePit(DeletePitRequest deletePitRequest, RequestOptions options) throws IOException {
return performRequestAndParseEntity(
deletePitRequest,
RequestConverters::deletePit,
options,
DeletePitResponse::fromXContent,
emptySet()
);
}

/**
* Asynchronously Delete point in time searches using delete PIT API
*
* @param deletePitRequest the request
* @param options the request options (e.g. headers), use {@link RequestOptions#DEFAULT} if nothing needs to be customized
* @param listener the listener to be notified upon request completion
* @return the response
*/
public final Cancellable deletePitAsync(
DeletePitRequest deletePitRequest,
RequestOptions options,
ActionListener<DeletePitResponse> listener
) {
return performRequestAsyncAndParseEntity(
deletePitRequest,
RequestConverters::deletePit,
options,
DeletePitResponse::fromXContent,
listener,
emptySet()
);
}

/**
* Delete all point in time searches using delete all PITs API
*
* @param deletePitRequest the request
* @param options the request options (e.g. headers), use {@link RequestOptions#DEFAULT} if nothing needs to be customized
* @return the response
*/
public final DeletePitResponse deleteAllPits(DeletePitRequest deletePitRequest, RequestOptions options) throws IOException {
return performRequestAndParseEntity(
deletePitRequest,
RequestConverters::deleteAllPits,
options,
DeletePitResponse::fromXContent,
emptySet()
);
}

/**
* Asynchronously Delete all point in time searches using delete all PITs API
*
* @param deletePitRequest the request
* @param options the request options (e.g. headers), use {@link RequestOptions#DEFAULT} if nothing needs to be customized
* @param listener the listener to be notified upon request completion
* @return the response
*/
public final Cancellable deleteAllPitsAsync(
DeletePitRequest deletePitRequest,
RequestOptions options,
ActionListener<DeletePitResponse> listener
) {
return performRequestAsyncAndParseEntity(
deletePitRequest,
RequestConverters::deleteAllPits,
options,
DeletePitResponse::fromXContent,
listener,
emptySet()
);
}

/**
* Clears one or more scroll ids using the Clear Scroll API.
*
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
/*
* SPDX-License-Identifier: Apache-2.0
*
* The OpenSearch Contributors require contributions made to
* this file be licensed under the Apache-2.0 license or a
* compatible open source license.
*/

package org.opensearch.client;

import org.apache.http.client.methods.HttpPost;
import org.apache.http.client.methods.HttpPut;
import org.junit.Before;
import org.opensearch.action.search.CreatePitRequest;
import org.opensearch.action.search.CreatePitResponse;
import org.opensearch.action.search.DeletePitInfo;
import org.opensearch.action.search.DeletePitRequest;
import org.opensearch.action.search.DeletePitResponse;
import org.opensearch.common.unit.TimeValue;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.TimeUnit;

/**
* Tests point in time API with rest high level client
*/
public class PitIT extends OpenSearchRestHighLevelClientTestCase {

@Before
public void indexDocuments() throws IOException {
Request doc1 = new Request(HttpPut.METHOD_NAME, "/index/_doc/1");
doc1.setJsonEntity("{\"type\":\"type1\", \"id\":1, \"num\":10, \"num2\":50}");
client().performRequest(doc1);
Request doc2 = new Request(HttpPut.METHOD_NAME, "/index/_doc/2");
doc2.setJsonEntity("{\"type\":\"type1\", \"id\":2, \"num\":20, \"num2\":40}");
client().performRequest(doc2);
Request doc3 = new Request(HttpPut.METHOD_NAME, "/index/_doc/3");
doc3.setJsonEntity("{\"type\":\"type1\", \"id\":3, \"num\":50, \"num2\":35}");
client().performRequest(doc3);
Request doc4 = new Request(HttpPut.METHOD_NAME, "/index/_doc/4");
doc4.setJsonEntity("{\"type\":\"type2\", \"id\":4, \"num\":100, \"num2\":10}");
client().performRequest(doc4);
Request doc5 = new Request(HttpPut.METHOD_NAME, "/index/_doc/5");
doc5.setJsonEntity("{\"type\":\"type2\", \"id\":5, \"num\":100, \"num2\":10}");
client().performRequest(doc5);
client().performRequest(new Request(HttpPost.METHOD_NAME, "/_refresh"));
}

public void testCreatePit() throws IOException {
CreatePitRequest pitRequest = new CreatePitRequest(new TimeValue(1, TimeUnit.DAYS), true, "index");
CreatePitResponse pitResponse = execute(pitRequest, highLevelClient()::createPit, highLevelClient()::createPitAsync);
assertTrue(pitResponse.getId() != null);
assertEquals(1, pitResponse.getTotalShards());
assertEquals(1, pitResponse.getSuccessfulShards());
assertEquals(0, pitResponse.getFailedShards());
assertEquals(0, pitResponse.getSkippedShards());
List<String> pitIds = new ArrayList<>();
pitIds.add(pitResponse.getId());
DeletePitRequest deletePitRequest = new DeletePitRequest(pitIds);
DeletePitResponse deletePitResponse = execute(deletePitRequest, highLevelClient()::deletePit, highLevelClient()::deletePitAsync);
assertTrue(deletePitResponse.getDeletePitResults().get(0).isSucceeded());
assertTrue(deletePitResponse.getDeletePitResults().get(0).getPitId().equals(pitResponse.getId()));
}

public void testDeleteAllPits() throws IOException {
CreatePitRequest pitRequest = new CreatePitRequest(new TimeValue(1, TimeUnit.DAYS), true, "index");
CreatePitResponse pitResponse = execute(pitRequest, highLevelClient()::createPit, highLevelClient()::createPitAsync);
CreatePitResponse pitResponse1 = execute(pitRequest, highLevelClient()::createPit, highLevelClient()::createPitAsync);
assertTrue(pitResponse.getId() != null);
assertTrue(pitResponse1.getId() != null);
List<String> pitIds = new ArrayList<>();
pitIds.add("_all");
DeletePitRequest deletePitRequest = new DeletePitRequest(pitIds);
DeletePitResponse deletePitResponse = execute(
deletePitRequest,
highLevelClient()::deleteAllPits,
highLevelClient()::deleteAllPitsAsync
);
for (DeletePitInfo deletePitInfo : deletePitResponse.getDeletePitResults()) {
assertTrue(deletePitInfo.isSucceeded());
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,10 @@
import org.opensearch.action.fieldcaps.FieldCapabilitiesResponse;
import org.opensearch.action.search.ClearScrollRequest;
import org.opensearch.action.search.ClearScrollResponse;
import org.opensearch.action.search.CreatePitRequest;
import org.opensearch.action.search.CreatePitResponse;
import org.opensearch.action.search.DeletePitRequest;
import org.opensearch.action.search.DeletePitResponse;
import org.opensearch.action.search.MultiSearchRequest;
import org.opensearch.action.search.MultiSearchResponse;
import org.opensearch.action.search.SearchRequest;
Expand Down Expand Up @@ -89,6 +93,7 @@
import org.opensearch.search.aggregations.metrics.WeightedAvgAggregationBuilder;
import org.opensearch.search.aggregations.support.MultiValuesSourceFieldConfig;
import org.opensearch.search.aggregations.support.ValueType;
import org.opensearch.search.builder.PointInTimeBuilder;
import org.opensearch.search.builder.SearchSourceBuilder;
import org.opensearch.search.fetch.subphase.FetchSourceContext;
import org.opensearch.search.fetch.subphase.highlight.HighlightBuilder;
Expand All @@ -100,11 +105,13 @@
import org.junit.Before;

import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;

import static org.opensearch.common.xcontent.XContentFactory.jsonBuilder;
import static org.opensearch.test.hamcrest.OpenSearchAssertions.assertToXContentEquivalent;
Expand Down Expand Up @@ -762,6 +769,46 @@ public void testSearchScroll() throws Exception {
}
}

public void testSearchWithPit() throws Exception {
for (int i = 0; i < 100; i++) {
XContentBuilder builder = jsonBuilder().startObject().field("field", i).endObject();
Request doc = new Request(HttpPut.METHOD_NAME, "/test/_doc/" + Integer.toString(i));
doc.setJsonEntity(Strings.toString(builder));
client().performRequest(doc);
}
client().performRequest(new Request(HttpPost.METHOD_NAME, "/test/_refresh"));

CreatePitRequest pitRequest = new CreatePitRequest(new TimeValue(1, TimeUnit.DAYS), true, "test");
CreatePitResponse pitResponse = execute(pitRequest, highLevelClient()::createPit, highLevelClient()::createPitAsync);

SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder().size(35)
.sort("field", SortOrder.ASC)
.pointInTimeBuilder(new PointInTimeBuilder(pitResponse.getId()));
SearchRequest searchRequest = new SearchRequest().source(searchSourceBuilder);
SearchResponse searchResponse = execute(searchRequest, highLevelClient()::search, highLevelClient()::searchAsync);

try {
long counter = 0;
assertSearchHeader(searchResponse);
assertThat(searchResponse.getHits().getTotalHits().value, equalTo(100L));
assertThat(searchResponse.getHits().getHits().length, equalTo(35));
for (SearchHit hit : searchResponse.getHits()) {
assertThat(((Number) hit.getSortValues()[0]).longValue(), equalTo(counter++));
}
} finally {
List<String> pitIds = new ArrayList<>();
pitIds.add(pitResponse.getId());
DeletePitRequest deletePitRequest = new DeletePitRequest(pitIds);
DeletePitResponse deletePitResponse = execute(
deletePitRequest,
highLevelClient()::deletePit,
highLevelClient()::deletePitAsync
);
assertTrue(deletePitResponse.getDeletePitResults().get(0).isSucceeded());
assertTrue(deletePitResponse.getDeletePitResults().get(0).getPitId().equals(pitResponse.getId()));
}
}

public void testMultiSearch() throws Exception {
MultiSearchRequest multiSearchRequest = new MultiSearchRequest();
SearchRequest searchRequest1 = new SearchRequest("index1");
Expand Down
Loading