Skip to content

TimeSeriesLifecycleActionsIT.testExplainFilters fails due to ILM retries #48767

@dakrone

Description

@dakrone

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    :Data Management/ILM+SLMDO NOT USE. Use ":StorageEngine/ILM" or ":Distributed Coordination/SLM" instead.>test-failureTriaged test failures from CI

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions