Exactly. So the persisted state should be that initial timer has been delivered. And hence when I re-start jboss initial timer should not be re-delivered.
How did you create the recurring timer?
Do you check whether there is already a timer active?
I created the timer on a freshly installed jboss instance (so no prior timers) using the code below:
timer = messageDrivenCtx.getTimerService().createTimer( job.getFirstSchedTime(), job.getRecurringInterval(), job);
Here recurring-interval is 1 hour (in milliseconds). After I got my first timer callback I restarted the server and saw the timer calback right away on restart. Multiple restarts of the server showed the same behavior.
This is 100% reproducible.
Nobody else is experiencing this??
This is a major problem. I have a bunch of tasks scheduled to do nightly maintenance on my devices at 1pm every night. So I am using a recurring timer to schedule these. Everything works as expected if I keep my application running. But if have to re-start my application for any reason, all those timers get fired right away..