Hi all.
In production under load, we experienced a case were a particular timer
stopped working.
I thought maybe a runstime exception stops a ScheduleExpression, but could
not simulate this. Glassfish I know was very sensible to this.
Could a low EJB timer thread seeting cause a timer to stop, working.
We use tomee 1.7
The timer is initialized like that.
@Singleton
@Lock(LockType.READ)
@Startup
public class CommEtaUpdateCacheTimer {
@Inject
private TimerScheduler scheduler;
@PostConstruct
public void doit() {
final ScheduleExpression schedule = new ScheduleExpression()
.hour("*")
.minute("*")
.second("*/5");
scheduler.scheduleEvent(schedule, new
CommEtaUpdateCacheTimerEvent());
}
public void observe(@Observes CommEtaUpdateCacheTimerEvent event) {
/*
processing code.
*/
}
public static class CommEtaUpdateCacheTimerEvent {
}
}
BR
Matej