I came across a requirement where there was a need to "Auto Retry" few tasks in every 2 hours (or more than 2 hours) in failure scenarios.
OIM allows me to set below "Auto Retry" configuration for any failure task:
No of Retry Count
Retry Period
I can provide 59 minutes as the max time for the Retry Period but in our case we don't want to retry in every hour or in every 59 minutes. We know the reason of failure of such tasks that's why we want to retry in every 5 hours (or n hours) to avoid unnecessary retries.
One solution was to write a schedule job and retry such rejected tasks.
Another solution, which I tried:
I changed the Retry Period in the database (MIL table). Design Console allows me to enter 59 minutes as the max value but database column doesn't have such limitation. I tried with giving the value as 120 minutes and it worked fine. First retry happened after 120 minutes only.
Only challenge with this approach, Design Console doesn't show this Retry Period while opening the task. I can see the Retry Period from the Process Definition form (where it lists all the tasks) but not on that particular task while opening the task detail.
So in case you want to make any changes in the task (rare case in Prod) then it will ask you to provide value for Retry Period while saving the task so you will have to change the value in database again.
OIM allows me to set below "Auto Retry" configuration for any failure task:
No of Retry Count
Retry Period
I can provide 59 minutes as the max time for the Retry Period but in our case we don't want to retry in every hour or in every 59 minutes. We know the reason of failure of such tasks that's why we want to retry in every 5 hours (or n hours) to avoid unnecessary retries.
One solution was to write a schedule job and retry such rejected tasks.
Another solution, which I tried:
I changed the Retry Period in the database (MIL table). Design Console allows me to enter 59 minutes as the max value but database column doesn't have such limitation. I tried with giving the value as 120 minutes and it worked fine. First retry happened after 120 minutes only.
Only challenge with this approach, Design Console doesn't show this Retry Period while opening the task. I can see the Retry Period from the Process Definition form (where it lists all the tasks) but not on that particular task while opening the task detail.
So in case you want to make any changes in the task (rare case in Prod) then it will ask you to provide value for Retry Period while saving the task so you will have to change the value in database again.