-
Notifications
You must be signed in to change notification settings - Fork 25.6k
Description
I'm tempted to call this a bug, but it's more a lack of coverage in the overall behavior of the system rather than a bug in any particular piece of code, so I'm going with >enhancement.
The unfollow action (in UnfollowAction.java) has the following note:
* 1) The index must have {@link LifecycleSettings#LIFECYCLE_INDEXING_COMPLETE} set to {@code true}, which is
* done automatically by {@link RolloverAction} (or manually).
Indeed, the only ILM action that currently sets LIFECYCLE_INDEXING_COMPLETE to true is the RolloverAction. But there are valid uses of ILM that don't happen to use the rollover action mechanism, and it's a shame that these use cases are currently unable to use ILM with CCR without needing to manually inject this setting (ILM's interaction with CCR uses the unfollow action).
It seems to me that the intent of the LIFECYCLE_INDEXING_COMPLETE setting (and setting it once an index has rolled over) is equally applicable to the notion of the readonly action, so my proposal is that we add the same set-indexing-complete logic from RolloverAction into the ReadOnlyAction in order to allow users that are using CCR and ILM (but not using rollover) to still have a way of having everything work together without requiring manual intervention.
There's also some logic in TimeSeriesLifecycleType (added in #37625 and expanded in #54803) that automatically injects an Unfollow action in certain circumstances -- I don't think that logic would need to change because of this change, but I might be missing something.