Skip to content

[CI] Rolling upgrade mixed cluster tests timeout waiting for green cluster health #25185

@jaymode

Description

@jaymode

The rolling upgrade tests failed on the 5.5 branch due to the call to the cluster health API not returning anything after 30 seconds in the mixed_cluster/10_basic/Index data and search on the mixed cluster test.

https://elasticsearch-ci.elastic.co/job/elastic+elasticsearch+5.5+bwc-tests/18/console

REPRODUCE WITH: gradle :qa:rolling-upgrade:v5.0.2#mixedClusterTestRunner -Dtests.seed=48F336D5A9FD5B28 -Dtests.class=org.elasticsearch.upgrades.UpgradeClusterClientYamlTestSuiteIT -Dtests.method="test {p0=mixed_cluster/10_basic/Index data and search on the mixed cluster}" -Dtests.security.manager=true -Dtests.locale=de-AT -Dtests.timezone=Africa/Maseru -Dtests.rest.suite=mixed_cluster
ERROR   30.5s | UpgradeClusterClientYamlTestSuiteIT.test {p0=mixed_cluster/10_basic/Index data and search on the mixed cluster} <<< FAILURES!
   > Throwable #1: java.lang.RuntimeException: Failure at [mixed_cluster/10_basic:3]: listener timeout after waiting for [30000] ms
   > 	at __randomizedtesting.SeedInfo.seed([48F336D5A9FD5B28:C0A7090F070136D0]:0)
   > 	at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.executeSection(ESClientYamlSuiteTestCase.java:343)
   > 	at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.test(ESClientYamlSuiteTestCase.java:325)
   > 	at java.lang.Thread.run(Thread.java:748)
   > Caused by: java.io.IOException: listener timeout after waiting for [30000] ms
   > 	at org.elasticsearch.client.RestClient$SyncResponseListener.get(RestClient.java:660)
   > 	at org.elasticsearch.client.RestClient.performRequest(RestClient.java:219)
   > 	at org.elasticsearch.client.RestClient.performRequest(RestClient.java:191)
   > 	at org.elasticsearch.test.rest.yaml.ClientYamlTestClient.callApi(ClientYamlTestClient.java:173)
   > 	at org.elasticsearch.test.rest.yaml.ClientYamlTestExecutionContext.callApiInternal(ClientYamlTestExecutionContext.java:161)
   > 	at org.elasticsearch.test.rest.yaml.ClientYamlTestExecutionContext.callApi(ClientYamlTestExecutionContext.java:93)
   > 	at org.elasticsearch.test.rest.yaml.section.DoSection.execute(DoSection.java:221)
   > 	at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.executeSection(ESClientYamlSuiteTestCase.java:341)
   > 	... 38 more

One enhancement that may help for future failure debugging is to change the timeout of either the cluster health request or the rest client so that the cluster health call times out on the server and we get a response rather than the test just aborting due to the rest client timeout.

@abeyad assigning to you based on the git history.

Metadata

Metadata

Assignees

Labels

>testIssues or PRs that are addressing/adding tests

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions