Ilm is creating an infinite initial index of {index_name}-000001

I would like to ask an ILM related issue.

  • The index is being deleted with ilm and it is working, but from a certain moment, the initial 0000001 index is created in the indices that are suddenly well rolled over, and there is only an empty index while ilm keeps creating new indexes.

[Probable cause of the problem]

  • no rollover info found for [my-index-000001] with alias [my-alias] ” The number of problematic indices is increasing, all of them have doc count 0, and there are higher numbered indices that are being rolled over
java.lang.IllegalStateException: no rollover info found for [index-000001] with rollover target [index], the index has not yet rolled over with that target
	at org.elasticsearch.xpack.core.ilm.UpdateRolloverLifecycleDateStep.performAction(UpdateRolloverLifecycleDateStep.java:60)
	at org.elasticsearch.xpack.ilm.ExecuteStepsUpdateTask.execute(ExecuteStepsUpdateTask.java:98)
	at org.elasticsearch.cluster.ClusterStateUpdateTask.execute(ClusterStateUpdateTask.java:48)
	at org.elasticsearch.cluster.service.MasterService.executeTasks(MasterService.java:691)
	at org.elasticsearch.cluster.service.MasterService.calculateTaskOutputs(MasterService.java:313)
	at org.elasticsearch.cluster.service.MasterService.runTasks(MasterService.java:208)
	at org.elasticsearch.cluster.service.MasterService.access$000(MasterService.java:62)
	at org.elasticsearch.cluster.service.MasterService$Batcher.run(MasterService.java:140)
	at org.elasticsearch.cluster.service.TaskBatcher.runIfNotProcessed(TaskBatcher.java:139)
	at org.elasticsearch.cluster.service.TaskBatcher$BatchedTask.run(TaskBatcher.java:177)
	at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:673)
	at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:241)
	at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:204)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
	at java.base/java.lang.Thread.run(Thread.java:831)
  • If there is a cluster failure or a problem with the node, there is a problem that RolloverInfo, one of the index metadata, cannot be received.
  • If the index template is not created or the alias does not work, there is a problem that the RolloverInfo cannot be received if there is a problem with the running task.

[How I tried to solve it]

  • Forcefully set ILM step to set-indexing-complete -> Enter delete phase the next time you run ILM and it will be deleted. -> The corresponding index is created again when inspecting ilm
  • Forced ILM step to delete -> Deleted immediately. -> The corresponding index is created again when inspecting ilm
  • Forced index to be deleted -> The corresponding index is created again when inspecting ilm

my elastic version is 7.13.3. Has anyone experienced this issue?

index template:

{
   "index": {
     "lifecycle": {
       "name": "logstash-policy",
       "rollover_alias": "test-index
     },
     "number_of_shards": "1"
   }
}

I made sure it wasn't fixed.

I just checked and the 000001 made by ILM is

test-index-000001{
   "aliases" : {
       "test-index" : { }
     },

it is like this,

Other normal indices are

test-index-000008{
   "aliases" : {
       "test-index" : {
"is_write_index" : false
}
     },

test-index-000007{
   "aliases" : {
       "test-index" : {
"is_write_index" : true
}
     },

This is how it is.
But write_index doesn't seem to have any effect. After updating that option , delete also found the same symptom.