[jboss-jira] [JBoss JIRA] (WFLY-12390) Hot-Deploy throws IllegalStateException: Timer already cancelled

David Schmidt (Jira) issues at jboss.org
Tue Aug 20 04:49:00 EDT 2019


     [ https://issues.jboss.org/browse/WFLY-12390?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Schmidt updated WFLY-12390:
---------------------------------
    Description: 
I did an Upgrade from 11 to 17.0.1 and now I'm getting IllegalStateException on hot-deploys.

What I tried without result:
* truncate the jboss_ejb_timer table (to remove existing)
* remove all old @Schedule and add a new different timer
* use @Resource TimerService instead of @Schedule
* deployment using auto-deploy in $JBOSS_HOME/server/deployments/ and jboss-cli.bat and maven wildfly:deploy
** call %jboss_bin%\jboss-cli.bat --connect controller=xxxxx:19990 --user=xxx --password=xxxx --command="deploy %war_path_1%%filename_1% --name=%package_name_1%.war --force"
** call mvn -q -f %package_name_1%\pom.xml wildfly:undeploy wildfly:deploy -Dwildfly.hostname=xxxxx -Dwildfly.password=xxxxxx


restart allows to deploy again (for a time)



{code}
2019-08-16 16:13:14,940 ERROR  [org.jboss.msc.service.fail] MSC000001: Failed to start service jboss.deployment.unit."xxxxxxx.war".component.CronJobs.START: org.jboss.msc.service.Star  
tException in service jboss.deployment.unit."xxxxxxx.war".component.CronJobs.START: java.lang.IllegalStateException: Timer already cancelled.  
        at org.jboss.as.ee.component.ComponentStartService$1.run(ComponentStartService.java:57)  
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)  
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)  
        at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)  
        at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)  
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)  
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)  
        at java.lang.Thread.run(Thread.java:745)  
        at org.jboss.threads.JBossThread.run(JBossThread.java:485)  
Caused by: java.lang.IllegalStateException: Timer already cancelled.  
        at java.util.Timer.sched(Timer.java:397)  
        at java.util.Timer.schedule(Timer.java:193)  
        at org.jboss.as.ejb3.timerservice.TimerServiceImpl.scheduleTimeout(TimerServiceImpl.java:906)  
        at org.jboss.as.ejb3.timerservice.TimerImpl.scheduleTimeout(TimerImpl.java:537)  
        at org.jboss.as.ejb3.timerservice.TimerServiceImpl.startTimer(TimerServiceImpl.java:785)  
        at org.jboss.as.ejb3.timerservice.TimerServiceImpl.restoreTimers(TimerServiceImpl.java:756)  
        at org.jboss.as.ejb3.timerservice.TimerServiceImpl.activate(TimerServiceImpl.java:223)  
        at org.jboss.as.ejb3.component.EJBComponent.init(EJBComponent.java:595)  
        at org.jboss.as.ee.component.BasicComponent.start(BasicComponent.java:222)  
        at org.jboss.as.ejb3.component.singleton.SingletonComponent.start(SingletonComponent.java:136)  
        at org.jboss.as.ee.component.ComponentStartService$1.run(ComponentStartService.java:54)  
        ... 8 more  
{code}


As it happens in programming, I can't reproduce this at the moment. I got tormented for weeks but today it doesn't happen...

  was:
I did an Upgrade from 11 to 17.0.1 and now I'm getting IllegalStateException on hot-deploys.

What I tried without result:
* truncate the jboss_ejb_timer table (to remove existing)
* remove all old @Schedule and add a new different timer
* use @Resource TimerService instead of @Schedule

restart allows to deploy again (for a time)



{code}
2019-08-16 16:13:14,940 ERROR  [org.jboss.msc.service.fail] MSC000001: Failed to start service jboss.deployment.unit."xxxxxxx.war".component.CronJobs.START: org.jboss.msc.service.Star  
tException in service jboss.deployment.unit."xxxxxxx.war".component.CronJobs.START: java.lang.IllegalStateException: Timer already cancelled.  
        at org.jboss.as.ee.component.ComponentStartService$1.run(ComponentStartService.java:57)  
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)  
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)  
        at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)  
        at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)  
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)  
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)  
        at java.lang.Thread.run(Thread.java:745)  
        at org.jboss.threads.JBossThread.run(JBossThread.java:485)  
Caused by: java.lang.IllegalStateException: Timer already cancelled.  
        at java.util.Timer.sched(Timer.java:397)  
        at java.util.Timer.schedule(Timer.java:193)  
        at org.jboss.as.ejb3.timerservice.TimerServiceImpl.scheduleTimeout(TimerServiceImpl.java:906)  
        at org.jboss.as.ejb3.timerservice.TimerImpl.scheduleTimeout(TimerImpl.java:537)  
        at org.jboss.as.ejb3.timerservice.TimerServiceImpl.startTimer(TimerServiceImpl.java:785)  
        at org.jboss.as.ejb3.timerservice.TimerServiceImpl.restoreTimers(TimerServiceImpl.java:756)  
        at org.jboss.as.ejb3.timerservice.TimerServiceImpl.activate(TimerServiceImpl.java:223)  
        at org.jboss.as.ejb3.component.EJBComponent.init(EJBComponent.java:595)  
        at org.jboss.as.ee.component.BasicComponent.start(BasicComponent.java:222)  
        at org.jboss.as.ejb3.component.singleton.SingletonComponent.start(SingletonComponent.java:136)  
        at org.jboss.as.ee.component.ComponentStartService$1.run(ComponentStartService.java:54)  
        ... 8 more  
{code}


As it happens in programming, I can't reproduce this at the moment. I got tormented for weeks but today it doesn't happen...



> Hot-Deploy throws IllegalStateException: Timer already cancelled
> ----------------------------------------------------------------
>
>                 Key: WFLY-12390
>                 URL: https://issues.jboss.org/browse/WFLY-12390
>             Project: WildFly
>          Issue Type: Bug
>          Components: EJB
>    Affects Versions: 17.0.1.Final
>         Environment: any OS
> single Wildfly 17 (not yet in production)
>            Reporter: David Schmidt
>            Assignee: Cheng Fang
>            Priority: Major
>
> I did an Upgrade from 11 to 17.0.1 and now I'm getting IllegalStateException on hot-deploys.
> What I tried without result:
> * truncate the jboss_ejb_timer table (to remove existing)
> * remove all old @Schedule and add a new different timer
> * use @Resource TimerService instead of @Schedule
> * deployment using auto-deploy in $JBOSS_HOME/server/deployments/ and jboss-cli.bat and maven wildfly:deploy
> ** call %jboss_bin%\jboss-cli.bat --connect controller=xxxxx:19990 --user=xxx --password=xxxx --command="deploy %war_path_1%%filename_1% --name=%package_name_1%.war --force"
> ** call mvn -q -f %package_name_1%\pom.xml wildfly:undeploy wildfly:deploy -Dwildfly.hostname=xxxxx -Dwildfly.password=xxxxxx
> restart allows to deploy again (for a time)
> {code}
> 2019-08-16 16:13:14,940 ERROR  [org.jboss.msc.service.fail] MSC000001: Failed to start service jboss.deployment.unit."xxxxxxx.war".component.CronJobs.START: org.jboss.msc.service.Star  
> tException in service jboss.deployment.unit."xxxxxxx.war".component.CronJobs.START: java.lang.IllegalStateException: Timer already cancelled.  
>         at org.jboss.as.ee.component.ComponentStartService$1.run(ComponentStartService.java:57)  
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)  
>         at java.util.concurrent.FutureTask.run(FutureTask.java:266)  
>         at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)  
>         at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)  
>         at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)  
>         at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)  
>         at java.lang.Thread.run(Thread.java:745)  
>         at org.jboss.threads.JBossThread.run(JBossThread.java:485)  
> Caused by: java.lang.IllegalStateException: Timer already cancelled.  
>         at java.util.Timer.sched(Timer.java:397)  
>         at java.util.Timer.schedule(Timer.java:193)  
>         at org.jboss.as.ejb3.timerservice.TimerServiceImpl.scheduleTimeout(TimerServiceImpl.java:906)  
>         at org.jboss.as.ejb3.timerservice.TimerImpl.scheduleTimeout(TimerImpl.java:537)  
>         at org.jboss.as.ejb3.timerservice.TimerServiceImpl.startTimer(TimerServiceImpl.java:785)  
>         at org.jboss.as.ejb3.timerservice.TimerServiceImpl.restoreTimers(TimerServiceImpl.java:756)  
>         at org.jboss.as.ejb3.timerservice.TimerServiceImpl.activate(TimerServiceImpl.java:223)  
>         at org.jboss.as.ejb3.component.EJBComponent.init(EJBComponent.java:595)  
>         at org.jboss.as.ee.component.BasicComponent.start(BasicComponent.java:222)  
>         at org.jboss.as.ejb3.component.singleton.SingletonComponent.start(SingletonComponent.java:136)  
>         at org.jboss.as.ee.component.ComponentStartService$1.run(ComponentStartService.java:54)  
>         ... 8 more  
> {code}
> As it happens in programming, I can't reproduce this at the moment. I got tormented for weeks but today it doesn't happen...



--
This message was sent by Atlassian Jira
(v7.12.1#712002)


More information about the jboss-jira mailing list