Technical Blog Post
Is it safe to delete entries from the TASKSCHEDULER table ?
Have you experienced a scenario where some crontasks or escalations do not appear to be running, while other records are running normally?
There are multiple reasons why an escalation is not firing correctly.
Before checking anything else, verify the cron task settings for this particular crontask from under Configuration > Cron Task Setup, and check the value for 'Schedule' field. Schedule is what governs the frequency of the cron task.
Besides this, you could check which process is kicking off this escalation process. Could you please check the frequency of the crontask (ie schedule) ?
SELECT * FROM TASKSCHEDULER ;
(You should check whether there are two or more entries for that escalation in the taskscheduler table for that Maximo environment)
Maybe you have it running too quickly and it sends it twice, because it didn't have enough time to complete the first escalation.
Sometimes the recommendation to solve a problem with a crontask or escalation is to remove the records from the TASKSCHEDULER table.
The TASKSCHEDULER table is used by Maximo to control the schedule of cron jobs (escalations and crontasks) .
Before a crontask or escalation runs, Maximo gets the last run information from TASKSCHEDULER table, and if no information is found, it will insert a new record in TASKSCHEDULER table if needed.
You may wonder : Is it safe to delete entries from the TASKSCHEDULER table ?
It is safe to delete those entries from the TASKSCHEDULER table. When you remove the entries from the table Maximo will add themselves back according to the schedule information from the active crontasks present in the system.
This delete can be run at any time to delete orphan records from the TASKSCHEDULER table.
The value in these fields inform the crontask on what server it is suppose to process. Removing these records allows the crontask to create a new record identifying the server and servername that it successfully started on in the current environment.
If you are working with a clustered Maximo environment, you may need to check whether multiple JVMs are running all the crontasks at the same time, causing conflicts.