Skip to content

Commit 151d244

Browse files
committed
Merge branch '6.x' into ccr-6.x
* 6.x: Fix not waiting for Netty ThreadDeathWatcher in IT (#31758) (#31789) [Docs] Correct default window_size (#31582) S3 fixture should report 404 on unknown bucket (#31782) [ML] Limit ML filter items to 10K (#31731) Fixture for Minio testing (#31688) [ML] Return statistics about forecasts as part of the jobsstats and usage API (#31647) [DOCS] Add missing get mappings docs to HLRC (#31765) [DOCS] Starting Elasticsearch (#31701) Fix coerce validation_method in GeoBoundingBoxQueryBuilder (#31747) Painless: Complete Removal of Painless Type (#31699) Consolidate watcher setting update registration (#31762) [DOCS] Adds empty 6.3.1 release notes page ingest: Introduction of a bytes processor (#31733) [test] don't run bats tests for suse boxes (#31749) Add analyze API to high-level rest client (#31577) Implemented XContent serialisation for GetIndexResponse (#31675) [DOCS] Typos DOC: Add examples to the SQL docs (#31633) Add support for AWS session tokens (#30414) Watcher: Reenable start/stop yaml tests (#31754) JDBC: Fix stackoverflow on getObject and timestamp conversion (#31735) Support multiple system store types (#31650) Add write*Blob option to replace existing blob (#31729) Split CircuitBreaker-related tests (#31659) Painless: Add Context Docs (#31190) Docs: Remove missing reference Migrate scripted metric aggregation scripts to ScriptContext design (#30111) Watcher: Fix chain input toXcontent serialization (#31721) Remove _all example (#31711) rest-high-level: added get cluster settings (#31706) Docs: Match the examples in the description (#31710) [Docs] Correct typos (#31720) Extend allowed characters for grok field names (#21745) (#31653) (#31722) [DOCS] Check for Windows and *nix file paths (#31648) [ML] Validate ML filter_id (#31535) Fix gradle4.8 deprecation warnings (#31654) Update numbers to reflect 4-byte UTF-8-encoded characters (#27083)
2 parents 77c60df + 0d75646 commit 151d244

File tree

247 files changed

+8317
-2023
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

247 files changed

+8317
-2023
lines changed

build.gradle

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -480,25 +480,17 @@ task run(type: Run) {
480480
impliesSubProjects = true
481481
}
482482

483-
task wrapper(type: Wrapper)
484-
485-
gradle.projectsEvaluated {
486-
487-
allprojects {
488-
tasks.withType(Wrapper) { Wrapper wrapper ->
489-
wrapper.distributionType = DistributionType.ALL
490-
491-
wrapper.doLast {
483+
wrapper {
484+
distributionType = DistributionType.ALL
485+
doLast {
492486
final DistributionLocator locator = new DistributionLocator()
493487
final GradleVersion version = GradleVersion.version(wrapper.gradleVersion)
494488
final URI distributionUri = locator.getDistributionFor(version, wrapper.distributionType.name().toLowerCase(Locale.ENGLISH))
495489
final URI sha256Uri = new URI(distributionUri.toString() + ".sha256")
496490
final String sha256Sum = new String(sha256Uri.toURL().bytes)
497491
wrapper.getPropertiesFile() << "distributionSha256Sum=${sha256Sum}\n"
498-
}
492+
println "Added checksum to wrapper properties"
499493
}
500-
}
501-
502494
}
503495

504496
static void assertLinesInFile(final Path path, final List<String> expectedLines) {
@@ -585,7 +577,7 @@ if (System.properties.get("build.compare") != null) {
585577
}
586578
}
587579
sourceBuild {
588-
gradleVersion = "4.7" // does not default to gradle weapper of project dir, but current version
580+
gradleVersion = "4.8.1" // does not default to gradle weapper of project dir, but current version
589581
projectDir = referenceProject
590582
tasks = ["clean", "assemble"]
591583
arguments = ["-Dbuild.compare_friendly=true"]

buildSrc/src/main/groovy/org/elasticsearch/gradle/BuildPlugin.groovy

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -471,6 +471,24 @@ class BuildPlugin implements Plugin<Project> {
471471

472472
/**Configuration generation of maven poms. */
473473
public static void configurePomGeneration(Project project) {
474+
// Only works with `enableFeaturePreview('STABLE_PUBLISHING')`
475+
// https://github.com/gradle/gradle/issues/5696#issuecomment-396965185
476+
project.tasks.withType(GenerateMavenPom.class) { GenerateMavenPom generatePOMTask ->
477+
// The GenerateMavenPom task is aggressive about setting the destination, instead of fighting it,
478+
// just make a copy.
479+
doLast {
480+
project.copy {
481+
from generatePOMTask.destination
482+
into "${project.buildDir}/distributions"
483+
rename { "${project.archivesBaseName}-${project.version}.pom" }
484+
}
485+
}
486+
// build poms with assemble (if the assemble task exists)
487+
Task assemble = project.tasks.findByName('assemble')
488+
if (assemble) {
489+
assemble.dependsOn(generatePOMTask)
490+
}
491+
}
474492
project.plugins.withType(MavenPublishPlugin.class).whenPluginAdded {
475493
project.publishing {
476494
publications {
@@ -480,20 +498,6 @@ class BuildPlugin implements Plugin<Project> {
480498
}
481499
}
482500
}
483-
484-
// Work around Gradle 4.8 issue until we `enableFeaturePreview('STABLE_PUBLISHING')`
485-
// https://github.com/gradle/gradle/issues/5696#issuecomment-396965185
486-
project.getGradle().getTaskGraph().whenReady {
487-
project.tasks.withType(GenerateMavenPom.class) { GenerateMavenPom t ->
488-
// place the pom next to the jar it is for
489-
t.destination = new File(project.buildDir, "distributions/${project.archivesBaseName}-${project.version}.pom")
490-
// build poms with assemble (if the assemble task exists)
491-
Task assemble = project.tasks.findByName('assemble')
492-
if (assemble) {
493-
assemble.dependsOn(t)
494-
}
495-
}
496-
}
497501
}
498502
}
499503

buildSrc/src/main/groovy/org/elasticsearch/gradle/plugin/PluginBuildPlugin.groovy

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -157,16 +157,18 @@ public class PluginBuildPlugin extends BuildPlugin {
157157
/** Adds a task to move jar and associated files to a "-client" name. */
158158
protected static void addClientJarTask(Project project) {
159159
Task clientJar = project.tasks.create('clientJar')
160-
clientJar.dependsOn(project.jar, 'generatePomFileForClientJarPublication', project.javadocJar, project.sourcesJar)
160+
clientJar.dependsOn(project.jar, project.tasks.generatePomFileForClientJarPublication, project.javadocJar, project.sourcesJar)
161161
clientJar.doFirst {
162162
Path jarFile = project.jar.outputs.files.singleFile.toPath()
163163
String clientFileName = jarFile.fileName.toString().replace(project.version, "client-${project.version}")
164164
Files.copy(jarFile, jarFile.resolveSibling(clientFileName), StandardCopyOption.REPLACE_EXISTING)
165165

166-
String pomFileName = jarFile.fileName.toString().replace('.jar', '.pom')
167166
String clientPomFileName = clientFileName.replace('.jar', '.pom')
168-
Files.copy(jarFile.resolveSibling(pomFileName), jarFile.resolveSibling(clientPomFileName),
169-
StandardCopyOption.REPLACE_EXISTING)
167+
Files.copy(
168+
project.tasks.generatePomFileForClientJarPublication.outputs.files.singleFile.toPath(),
169+
jarFile.resolveSibling(clientPomFileName),
170+
StandardCopyOption.REPLACE_EXISTING
171+
)
170172

171173
String sourcesFileName = jarFile.fileName.toString().replace('.jar', '-sources.jar')
172174
String clientSourcesFileName = clientFileName.replace('.jar', '-sources.jar')

buildSrc/src/main/groovy/org/elasticsearch/gradle/test/StandaloneRestTestPlugin.groovy

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ import org.gradle.api.Plugin
2929
import org.gradle.api.Project
3030
import org.gradle.api.Task
3131
import org.gradle.api.plugins.JavaBasePlugin
32+
import org.gradle.api.tasks.compile.JavaCompile
3233

3334
/**
3435
* Configures the build to compile tests against Elasticsearch's test framework
@@ -61,5 +62,12 @@ public class StandaloneRestTestPlugin implements Plugin<Project> {
6162

6263
PrecommitTasks.create(project, false)
6364
project.check.dependsOn(project.precommit)
65+
66+
project.tasks.withType(JavaCompile) {
67+
// This will be the default in Gradle 5.0
68+
if (options.compilerArgs.contains("-processor") == false) {
69+
options.compilerArgs << '-proc:none'
70+
}
71+
}
6472
}
6573
}

buildSrc/src/main/groovy/org/elasticsearch/gradle/vagrant/VagrantTestPlugin.groovy

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -526,7 +526,11 @@ class VagrantTestPlugin implements Plugin<Project> {
526526
project.gradle.removeListener(batsPackagingReproListener)
527527
}
528528
if (project.extensions.esvagrant.boxes.contains(box)) {
529-
packagingTest.dependsOn(batsPackagingTest)
529+
// these tests are temporarily disabled for suse boxes while we debug an issue
530+
// https://github.com/elastic/elasticsearch/issues/30295
531+
if (box.equals("opensuse-42") == false && box.equals("sles-12") == false) {
532+
packagingTest.dependsOn(batsPackagingTest)
533+
}
530534
}
531535
}
532536

client/benchmark/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ buildscript {
2424
}
2525
}
2626
dependencies {
27-
classpath 'com.github.jengelman.gradle.plugins:shadow:2.0.2'
27+
classpath 'com.github.jengelman.gradle.plugins:shadow:2.0.4'
2828
}
2929
}
3030

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

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323
import org.elasticsearch.action.ActionListener;
2424
import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequest;
2525
import org.elasticsearch.action.admin.cluster.health.ClusterHealthResponse;
26+
import org.elasticsearch.action.admin.cluster.settings.ClusterGetSettingsRequest;
27+
import org.elasticsearch.action.admin.cluster.settings.ClusterGetSettingsResponse;
2628
import org.elasticsearch.action.admin.cluster.settings.ClusterUpdateSettingsRequest;
2729
import org.elasticsearch.action.admin.cluster.settings.ClusterUpdateSettingsResponse;
2830
import org.elasticsearch.rest.RestStatus;
@@ -100,6 +102,35 @@ public void putSettingsAsync(ClusterUpdateSettingsRequest clusterUpdateSettingsR
100102
ClusterUpdateSettingsResponse::fromXContent, listener, emptySet(), headers);
101103
}
102104

105+
/**
106+
* Get the cluster wide settings using the Cluster Get Settings API.
107+
* See <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-get-settings.html"> Cluster Get Settings
108+
* API on elastic.co</a>
109+
* @param clusterGetSettingsRequest the request
110+
* @param options the request options (e.g. headers), use {@link RequestOptions#DEFAULT} if nothing needs to be customized
111+
* @return the response
112+
* @throws IOException in case there is a problem sending the request or parsing back the response
113+
*/
114+
public ClusterGetSettingsResponse getSettings(ClusterGetSettingsRequest clusterGetSettingsRequest, RequestOptions options)
115+
throws IOException {
116+
return restHighLevelClient.performRequestAndParseEntity(clusterGetSettingsRequest, RequestConverters::clusterGetSettings,
117+
options, ClusterGetSettingsResponse::fromXContent, emptySet());
118+
}
119+
120+
/**
121+
* Asynchronously get the cluster wide settings using the Cluster Get Settings API.
122+
* See <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-get-settings.html"> Cluster Get Settings
123+
* API on elastic.co</a>
124+
* @param clusterGetSettingsRequest the request
125+
* @param options the request options (e.g. headers), use {@link RequestOptions#DEFAULT} if nothing needs to be customized
126+
* @param listener the listener to be notified upon request completion
127+
*/
128+
public void getSettingsAsync(ClusterGetSettingsRequest clusterGetSettingsRequest, RequestOptions options,
129+
ActionListener<ClusterGetSettingsResponse> listener) {
130+
restHighLevelClient.performRequestAsyncAndParseEntity(clusterGetSettingsRequest, RequestConverters::clusterGetSettings,
131+
options, ClusterGetSettingsResponse::fromXContent, listener, emptySet());
132+
}
133+
103134
/**
104135
* Get cluster health using the Cluster Health API.
105136
* See

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

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@
2424
import org.elasticsearch.action.admin.indices.alias.IndicesAliasesRequest;
2525
import org.elasticsearch.action.admin.indices.alias.IndicesAliasesResponse;
2626
import org.elasticsearch.action.admin.indices.alias.get.GetAliasesRequest;
27+
import org.elasticsearch.action.admin.indices.analyze.AnalyzeRequest;
28+
import org.elasticsearch.action.admin.indices.analyze.AnalyzeResponse;
2729
import org.elasticsearch.action.admin.indices.cache.clear.ClearIndicesCacheRequest;
2830
import org.elasticsearch.action.admin.indices.cache.clear.ClearIndicesCacheResponse;
2931
import org.elasticsearch.action.admin.indices.close.CloseIndexRequest;
@@ -1182,4 +1184,32 @@ public void getTemplateAsync(GetIndexTemplatesRequest getIndexTemplatesRequest,
11821184
restHighLevelClient.performRequestAsyncAndParseEntity(getIndexTemplatesRequest, RequestConverters::getTemplates,
11831185
options, GetIndexTemplatesResponse::fromXContent, listener, emptySet());
11841186
}
1187+
1188+
/**
1189+
* Calls the analyze API
1190+
*
1191+
* See <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-analyze.html">Analyze API on elastic.co</a>
1192+
*
1193+
* @param request the request
1194+
* @param options the request options (e.g. headers), use {@link RequestOptions#DEFAULT} if nothing needs to be customized
1195+
*/
1196+
public AnalyzeResponse analyze(AnalyzeRequest request, RequestOptions options) throws IOException {
1197+
return restHighLevelClient.performRequestAndParseEntity(request, RequestConverters::analyze, options,
1198+
AnalyzeResponse::fromXContent, emptySet());
1199+
}
1200+
1201+
/**
1202+
* Asynchronously calls the analyze API
1203+
*
1204+
* See <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-analyze.html">Analyze API on elastic.co</a>
1205+
*
1206+
* @param request the request
1207+
* @param options the request options (e.g. headers), use {@link RequestOptions#DEFAULT} if nothing needs to be customized
1208+
* @param listener the listener to be notified upon request completion
1209+
*/
1210+
public void analyzeAsync(AnalyzeRequest request, RequestOptions options,
1211+
ActionListener<AnalyzeResponse> listener) {
1212+
restHighLevelClient.performRequestAsyncAndParseEntity(request, RequestConverters::analyze, options,
1213+
AnalyzeResponse::fromXContent, listener, emptySet());
1214+
}
11851215
}

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

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,15 @@
3636
import org.elasticsearch.action.admin.cluster.repositories.get.GetRepositoriesRequest;
3737
import org.elasticsearch.action.admin.cluster.repositories.put.PutRepositoryRequest;
3838
import org.elasticsearch.action.admin.cluster.repositories.verify.VerifyRepositoryRequest;
39+
import org.elasticsearch.action.admin.cluster.settings.ClusterGetSettingsRequest;
3940
import org.elasticsearch.action.admin.cluster.settings.ClusterUpdateSettingsRequest;
4041
import org.elasticsearch.action.admin.cluster.snapshots.create.CreateSnapshotRequest;
4142
import org.elasticsearch.action.admin.cluster.storedscripts.DeleteStoredScriptRequest;
4243
import org.elasticsearch.action.admin.cluster.storedscripts.GetStoredScriptRequest;
4344
import org.elasticsearch.action.admin.cluster.snapshots.delete.DeleteSnapshotRequest;
4445
import org.elasticsearch.action.admin.indices.alias.IndicesAliasesRequest;
4546
import org.elasticsearch.action.admin.indices.alias.get.GetAliasesRequest;
47+
import org.elasticsearch.action.admin.indices.analyze.AnalyzeRequest;
4648
import org.elasticsearch.action.admin.indices.cache.clear.ClearIndicesCacheRequest;
4749
import org.elasticsearch.action.admin.indices.close.CloseIndexRequest;
4850
import org.elasticsearch.action.admin.indices.create.CreateIndexRequest;
@@ -613,7 +615,7 @@ static Request searchTemplate(SearchTemplateRequest searchTemplateRequest) throw
613615
request.setEntity(createEntity(searchTemplateRequest, REQUEST_BODY_CONTENT_TYPE));
614616
return request;
615617
}
616-
618+
617619
static Request multiSearchTemplate(MultiSearchTemplateRequest multiSearchTemplateRequest) throws IOException {
618620
Request request = new Request(HttpPost.METHOD_NAME, "/_msearch/template");
619621

@@ -627,7 +629,7 @@ static Request multiSearchTemplate(MultiSearchTemplateRequest multiSearchTemplat
627629
byte[] source = MultiSearchTemplateRequest.writeMultiLineFormat(multiSearchTemplateRequest, xContent);
628630
request.setEntity(new ByteArrayEntity(source, createContentType(xContent.type())));
629631
return request;
630-
}
632+
}
631633

632634
static Request existsAlias(GetAliasesRequest getAliasesRequest) {
633635
if ((getAliasesRequest.indices() == null || getAliasesRequest.indices().length == 0) &&
@@ -719,6 +721,17 @@ static Request clusterPutSettings(ClusterUpdateSettingsRequest clusterUpdateSett
719721
return request;
720722
}
721723

724+
static Request clusterGetSettings(ClusterGetSettingsRequest clusterGetSettingsRequest) throws IOException {
725+
Request request = new Request(HttpGet.METHOD_NAME, "/_cluster/settings");
726+
727+
Params parameters = new Params(request);
728+
parameters.withLocal(clusterGetSettingsRequest.local());
729+
parameters.withIncludeDefaults(clusterGetSettingsRequest.includeDefaults());
730+
parameters.withMasterTimeout(clusterGetSettingsRequest.masterNodeTimeout());
731+
732+
return request;
733+
}
734+
722735
static Request getPipeline(GetPipelineRequest getPipelineRequest) {
723736
String endpoint = new EndpointBuilder()
724737
.addPathPartAsIs("_ingest/pipeline")
@@ -997,6 +1010,18 @@ static Request getAlias(GetAliasesRequest getAliasesRequest) {
9971010
return request;
9981011
}
9991012

1013+
static Request analyze(AnalyzeRequest request) throws IOException {
1014+
EndpointBuilder builder = new EndpointBuilder();
1015+
String index = request.index();
1016+
if (index != null) {
1017+
builder.addPathPart(index);
1018+
}
1019+
builder.addPathPartAsIs("_analyze");
1020+
Request req = new Request(HttpGet.METHOD_NAME, builder.build());
1021+
req.setEntity(createEntity(request, REQUEST_BODY_CONTENT_TYPE));
1022+
return req;
1023+
}
1024+
10001025
static Request getScript(GetStoredScriptRequest getStoredScriptRequest) {
10011026
String endpoint = new EndpointBuilder().addPathPartAsIs("_scripts").addPathPart(getStoredScriptRequest.id()).build();
10021027
Request request = new Request(HttpGet.METHOD_NAME, endpoint);

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

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@
2222
import org.elasticsearch.ElasticsearchException;
2323
import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequest;
2424
import org.elasticsearch.action.admin.cluster.health.ClusterHealthResponse;
25+
import org.elasticsearch.action.admin.cluster.settings.ClusterGetSettingsRequest;
26+
import org.elasticsearch.action.admin.cluster.settings.ClusterGetSettingsResponse;
2527
import org.elasticsearch.action.admin.cluster.settings.ClusterUpdateSettingsRequest;
2628
import org.elasticsearch.action.admin.cluster.settings.ClusterUpdateSettingsResponse;
2729
import org.elasticsearch.cluster.health.ClusterHealthStatus;
@@ -42,6 +44,7 @@
4244
import static java.util.Collections.emptyMap;
4345
import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertAcked;
4446
import static org.hamcrest.Matchers.equalTo;
47+
import static org.hamcrest.Matchers.greaterThan;
4548
import static org.hamcrest.Matchers.notNullValue;
4649
import static org.hamcrest.Matchers.nullValue;
4750

@@ -115,6 +118,46 @@ public void testClusterUpdateSettingNonExistent() {
115118
"Elasticsearch exception [type=illegal_argument_exception, reason=transient setting [" + setting + "], not recognized]"));
116119
}
117120

121+
public void testClusterGetSettings() throws IOException {
122+
final String transientSettingKey = RecoverySettings.INDICES_RECOVERY_MAX_BYTES_PER_SEC_SETTING.getKey();
123+
final int transientSettingValue = 10;
124+
125+
final String persistentSettingKey = EnableAllocationDecider.CLUSTER_ROUTING_ALLOCATION_ENABLE_SETTING.getKey();
126+
final String persistentSettingValue = EnableAllocationDecider.Allocation.NONE.name();
127+
128+
Settings transientSettings =
129+
Settings.builder().put(transientSettingKey, transientSettingValue, ByteSizeUnit.BYTES).build();
130+
Settings persistentSettings = Settings.builder().put(persistentSettingKey, persistentSettingValue).build();
131+
clusterUpdateSettings(persistentSettings, transientSettings);
132+
133+
ClusterGetSettingsRequest request = new ClusterGetSettingsRequest();
134+
ClusterGetSettingsResponse response = execute(
135+
request, highLevelClient().cluster()::getSettings, highLevelClient().cluster()::getSettingsAsync);
136+
assertEquals(persistentSettings, response.getPersistentSettings());
137+
assertEquals(transientSettings, response.getTransientSettings());
138+
assertEquals(0, response.getDefaultSettings().size());
139+
}
140+
141+
public void testClusterGetSettingsWithDefault() throws IOException {
142+
final String transientSettingKey = RecoverySettings.INDICES_RECOVERY_MAX_BYTES_PER_SEC_SETTING.getKey();
143+
final int transientSettingValue = 10;
144+
145+
final String persistentSettingKey = EnableAllocationDecider.CLUSTER_ROUTING_ALLOCATION_ENABLE_SETTING.getKey();
146+
final String persistentSettingValue = EnableAllocationDecider.Allocation.NONE.name();
147+
148+
Settings transientSettings =
149+
Settings.builder().put(transientSettingKey, transientSettingValue, ByteSizeUnit.BYTES).build();
150+
Settings persistentSettings = Settings.builder().put(persistentSettingKey, persistentSettingValue).build();
151+
clusterUpdateSettings(persistentSettings, transientSettings);
152+
153+
ClusterGetSettingsRequest request = new ClusterGetSettingsRequest().includeDefaults(true);
154+
ClusterGetSettingsResponse response = execute(
155+
request, highLevelClient().cluster()::getSettings, highLevelClient().cluster()::getSettingsAsync);
156+
assertEquals(persistentSettings, response.getPersistentSettings());
157+
assertEquals(transientSettings, response.getTransientSettings());
158+
assertThat(response.getDefaultSettings().size(), greaterThan(0));
159+
}
160+
118161
public void testClusterHealthGreen() throws IOException {
119162
ClusterHealthRequest request = new ClusterHealthRequest();
120163
request.timeout("5s");

0 commit comments

Comments
 (0)