Error invoking timeout for timer because incorrect component shutdown report
andres.delpino May 29, 2015 5:08 AMHi all,
I am facing a very strange error and I don't have any clue why it was caused. Thing is I have a task that is scheduled to be executed every minute:
@Schedule(second= "0", minute = "*", hour = "*", persistent = false)
This has been working for quite some time without problems but suddenly yesterday I received the following exception:
07:51:00,006 ERROR [org.jboss.as.ejb3] (EJB default - 6) JBAS014120: Error invoking timeout for timer: [id=a4b0ef7f-868b-4ca6-b05e-cd007ffb1764 timedObjectId=backend-0.9.0.backend-0.9.0.SchedulerService auto-timer?:true persistent?:false timerService=org.jboss.as.ejb3.timerservice.TimerServiceImpl@2ddad0f6 initialExpiration=Wed May 27 00:00:00 UTC 2015 intervalDuration(in milli sec)=0 nextExpiration=Thu May 28 07:52:00 UTC 2015 timerState=IN_TIMEOUT: org.jboss.as.ejb3.component.EJBComponentUnavailableException: JBAS014559: Invocation cannot proceed as component is shutting down
at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:59)
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288)
at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50)
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288)
at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:55)
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288)
at org.jboss.as.ee.component.TCCLInterceptor.processInvocation(TCCLInterceptor.java:45)
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288)
at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
at org.jboss.as.ejb3.timerservice.TimedObjectInvokerImpl.callTimeout(TimedObjectInvokerImpl.java:101)
at org.jboss.as.ejb3.timerservice.task.CalendarTimerTask.callTimeout(CalendarTimerTask.java:60)
at org.jboss.as.ejb3.timerservice.task.TimerTask.run(TimerTask.java:132)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [rt.jar:1.7.0_60]
at java.util.concurrent.FutureTask.run(FutureTask.java:262) [rt.jar:1.7.0_60]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_60]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_60]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_60]
at org.jboss.threads.JBossThread.run(JBossThread.java:122)
07:51:00,010 INFO [org.jboss.as.ejb3] (EJB default - 6) JBAS014121: Timer: [id=a4b0ef7f-868b-4ca6-b05e-cd007ffb1764 timedObjectId=backend-0.9.0.backend-0.9.0.SchedulerService auto-timer?:true persistent?:false timerService=org.jboss.as.ejb3.timerservice.TimerServiceImpl@2ddad0f6 initialExpiration=Wed May 27 00:00:00 UTC 2015 intervalDuration(in milli sec)=0 nextExpiration=Thu May 28 07:52:00 UTC 2015 timerState=IN_TIMEOUT will be retried
07:51:00,010 INFO [org.jboss.as.ejb3] (EJB default - 6) JBAS014123: Retrying timeout for timer: [id=a4b0ef7f-868b-4ca6-b05e-cd007ffb1764 timedObjectId=backend-0.9.0.backend-0.9.0.SchedulerService auto-timer?:true persistent?:false timerService=org.jboss.as.ejb3.timerservice.TimerServiceImpl@2ddad0f6 initialExpiration=Wed May 27 00:00:00 UTC 2015 intervalDuration(in milli sec)=0 nextExpiration=Thu May 28 07:52:00 UTC 2015 timerState=IN_TIMEOUT
07:51:00,011 ERROR [org.jboss.as.ejb3] (EJB default - 6) JBAS014122: Error during retrying timeout for timer: [id=a4b0ef7f-868b-4ca6-b05e-cd007ffb1764 timedObjectId=backend-0.9.0.backend-0.9.0.SchedulerService auto-timer?:true persistent?:false timerService=org.jboss.as.ejb3.timerservice.TimerServiceImpl@2ddad0f6 initialExpiration=Wed May 27 00:00:00 UTC 2015 intervalDuration(in milli sec)=0 nextExpiration=Thu May 28 07:52:00 UTC 2015 timerState=RETRY_TIMEOUT: org.jboss.as.ejb3.component.EJBComponentUnavailableException: JBAS014559: Invocation cannot proceed as component is shutting down
at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:59)
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288)
at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50)
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288)
at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:55)
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288)
at org.jboss.as.ee.component.TCCLInterceptor.processInvocation(TCCLInterceptor.java:45)
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288)
at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
at org.jboss.as.ejb3.timerservice.TimedObjectInvokerImpl.callTimeout(TimedObjectInvokerImpl.java:101)
at org.jboss.as.ejb3.timerservice.task.CalendarTimerTask.callTimeout(CalendarTimerTask.java:60)
at org.jboss.as.ejb3.timerservice.task.TimerTask.retryTimeout(TimerTask.java:184)
at org.jboss.as.ejb3.timerservice.task.TimerTask.run(TimerTask.java:140)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [rt.jar:1.7.0_60]
at java.util.concurrent.FutureTask.run(FutureTask.java:262) [rt.jar:1.7.0_60]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_60]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_60]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_60]
at org.jboss.threads.JBossThread.run(JBossThread.java:122)
Ok I understand that this could happen if the application or the JBoss is being shutdown, the problem is that I didn't stop it and in fact every other job (I have like 3 or 4 more) kept running (and are still running) but this specific one is completely dead. Wasn't executed that time and haven't been retried since then.
Does anyone have any clue about what might had happened?
Another thing would be if it is possible how to force that the job is executed the next minute again even if this exception was received.
I'm using JBoss EAP 6.2.
Any help you could provide would be highly appreciated.
Thank you!
Cheers
Andrés