It's possible for the testExplainFilters test to fail due to ILM retrying the failed step and thus not being in the failed step. This causes an exception like:
java.lang.AssertionError:
Expected: (map containing ["iaelhhxvxf-error"->ANYTHING] and map containing ["iaelhhxvxf-nonexistant-policy"->ANYTHING])
but: map containing ["iaelhhxvxf-error"->ANYTHING] map was [<iaelhhxvxf-nonexistant-policy={index=iaelhhxvxf-nonexistant-policy, managed=true, policy=Xrtic, step_info={type=illegal_argument_exception, reason=policy [Xrtic] does not exist}}>]
at __randomizedtesting.SeedInfo.seed([F284FECD14016E34:74B0734551DA485]:0)
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:18)
at org.junit.Assert.assertThat(Assert.java:956)
at org.junit.Assert.assertThat(Assert.java:923)
at org.elasticsearch.xpack.ilm.TimeSeriesLifecycleActionsIT.lambda$testExplainFilters$47(TimeSeriesLifecycleActionsIT.java:866)
at org.elasticsearch.test.ESTestCase.assertBusy(ESTestCase.java:867)
at org.elasticsearch.test.ESTestCase.assertBusy(ESTestCase.java:840)
at org.elasticsearch.xpack.ilm.TimeSeriesLifecycleActionsIT.testExplainFilters(TimeSeriesLifecycleActionsIT.java:853)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1750)
at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:938)
https://elasticsearch-ci.elastic.co/job/elastic+elasticsearch+pull-request-2/10081/testReport/junit/org.elasticsearch.xpack.ilm/TimeSeriesLifecycleActionsIT/testExplainFilters/
https://gradle-enterprise.elastic.co/s/rgyylclrstq2o
The test should use a non-retryable error to simulate a policy in error, so that ILM doesn't auto-retry it and move the index out of the ERROR step.
It's possible for the
testExplainFilterstest to fail due to ILM retrying the failed step and thus not being in the failed step. This causes an exception like:https://elasticsearch-ci.elastic.co/job/elastic+elasticsearch+pull-request-2/10081/testReport/junit/org.elasticsearch.xpack.ilm/TimeSeriesLifecycleActionsIT/testExplainFilters/
https://gradle-enterprise.elastic.co/s/rgyylclrstq2o
The test should use a non-retryable error to simulate a policy in error, so that ILM doesn't auto-retry it and move the index out of the ERROR step.