Multiple ISM Policies for each Index

2.5 (relevant - OpenSearch/Dashboard/Server OS/Browser):

Describe the issue:

I’m trying to simulate an AND condition to migrate an Index from HOT to WARM. In my case, would like to trigger ISM either when the Min Age is x days and Primary Shard size is 30GB.

Is there a way to achieve this one? Is priority is the way to go?


Relevant Logs or Screenshots:

@vik Did you mean “or”?

I got the OR condition working :slight_smile: So, all good on that one.

But, I was trying to figure out how to match multiple conditions . Say ( min age = 1 day and max shard size = 30gb). I tried add two different policies and attach it to every index, but that doesn’t seem to work.

@vik According to the OpenSearch documentation, if the policy has multiple transitions defined in the specific state, the ISM will iterate through the list of transitions until the boolean value is true. Once the condition is met the remaining transitions will be skipped.

Based on the above description, I don’t think the AND operand is supported in the transitions.

Thanks @pablo I think I understand it, and went with implementing my scenario by adding a condition in Transition state, thus making it a sequential process.

@vik how did you make an OR condition for your policy? I currently want to have a policy that deletes the index either if the index is older than X days or if the total size of the index is bigger than X GB

is this even possible in ISM?

“OR” Conditions are possible, and you can specify in json like so, I suppose

“rollover”: {

                         "min_index_age": "Xd,
                         "min_primary_shard_size": "Xgb"