Why doesnt my timer trigger?
I have a process, that has a timer set to 5 minutes with its generate duration expression in the gui. After the time is up, a gateway should check, the business variable, and if the data to check is valid the process moves to the next flownode. Otherwise it returns to the timer, and again waits 5 minutes.
This method has a problem, the timer doesnt trigger, i found my trigger in the event_trigger_instance table it exists, in my case details the last flownode is the one before the timer, i know the timer doesnt appear here, but after 5 minutes the gateway should appear in the details of my case details.
I migrated from 7.9.0 to 7.11.4, since then i didnt deploy my process, i didnt test this until now, because im rather in panic that the live application has such a flaw. So any help is welcome!
I am about to text this, if this is a one time thing or permanent, and the process reupload fixes it or not. But still i could use some help :)
Why isnt my process moving forward? Do i have to put up my processes again? Is it a bug?
After the migration i forgot to run this SQL:
DELETE FROM QRTZ_PAUSED_TRIGGER_GRPS;
UPDATE QRTZ_TRIGGERS SET TRIGGER_STATE = 'WAITING' WHERE TRIGGER_STATE = 'PAUSED';
It was a little confusing, cause i thought i would only affect the old timers, not new ones.
Oh well it is probalby fixed now, after testing it looks like it worked.
It is indeed a bug, in version 7.10 to 7.12, stopping services and starting services do not pause the triggers in Quartz tables. It does not have impacts when you pause services because event if quartz triggers are fired when services are stopped, they will be retried later.
However, if the services are paused in a version before 7.10, then the platform is migrated to a version between 7.10 and 7.12, then you encounter this bug.
What you did fixes the issues by removing the pause status of triggers in the database. It's a valid and safe workaround. The bug itself will be fixed in the next version.
Thank you for the explanation :)