[ 
https://issues.apache.org/jira/browse/TAP5-2406?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Howard M. Lewis Ship updated TAP5-2406:
---------------------------------------
    Summary: PeriodicExecutor service can rarely reach a deadlock when trying 
to run a job and modify the list of jobs  (was: deadlock in PeriodicExecutor)

> PeriodicExecutor service can rarely reach a deadlock when trying to run a job 
> and modify the list of jobs
> ---------------------------------------------------------------------------------------------------------
>
>                 Key: TAP5-2406
>                 URL: https://issues.apache.org/jira/browse/TAP5-2406
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-ioc
>    Affects Versions: 5.3.7, 5.4
>            Reporter: Jun Tsai
>            Priority: Blocker
>
> {quote}
> "Tapestry PeriodicExecutor":
>       at 
> org.apache.tapestry5.ioc.internal.services.cron.PeriodicExecutorImpl$Job.isExecuting(PeriodicExecutorImpl.java:84)
>       - waiting to lock <0x00000006c2ad83e8> (a 
> org.apache.tapestry5.ioc.internal.services.cron.PeriodicExecutorImpl$Job)
>       at 
> org.apache.tapestry5.ioc.internal.services.cron.PeriodicExecutorImpl.executeCurrentBatch(PeriodicExecutorImpl.java:299)
>       - locked <0x00000006bffbb7a8> (a 
> org.apache.tapestry5.ioc.internal.services.cron.PeriodicExecutorImpl)
>       at 
> org.apache.tapestry5.ioc.internal.services.cron.PeriodicExecutorImpl.run(PeriodicExecutorImpl.java:249)
>       at java.lang.Thread.run(Thread.java:744)
> {quote}
> {quote}
> "monad-background-6":
>       at 
> org.apache.tapestry5.ioc.internal.services.cron.PeriodicExecutorImpl.removeJob(PeriodicExecutorImpl.java:211)
>       - waiting to lock <0x00000006bffbb7a8> (a 
> org.apache.tapestry5.ioc.internal.services.cron.PeriodicExecutorImpl)
>       at 
> org.apache.tapestry5.ioc.internal.services.cron.PeriodicExecutorImpl$Job.cleanupAfterExecution(PeriodicExecutorImpl.java:161)
>       - locked <0x00000006c2ad83e8> (a 
> org.apache.tapestry5.ioc.internal.services.cron.PeriodicExecutorImpl$Job)
>       at 
> org.apache.tapestry5.ioc.internal.services.cron.PeriodicExecutorImpl$Job.invoke(PeriodicExecutorImpl.java:181)
>       at 
> org.apache.tapestry5.ioc.internal.services.cron.PeriodicExecutorImpl$Job.invoke(PeriodicExecutorImpl.java:48)
>       at 
> org.apache.tapestry5.ioc.internal.services.ParallelExecutorImpl$1.call(ParallelExecutorImpl.java:58)
>       at java.util.concurrent.FutureTask.run(FutureTask.java:262)
>       at egfit.f.p$a$b.run(ThreadPoolModule.scala:85)
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>       at java.lang.Thread.run(Thread.java:744)
> Found 1 deadlock.
> {quote}
> ---------------------------------------------------------------------------------------------
> {color:red}
> Found one Java-level deadlock:
> =============================
> "Tapestry PeriodicExecutor":
>   waiting to lock monitor 0x00007f641cef7298 (object 0x00000006c2ad83e8, a 
> org.apache.tapestry5.ioc.internal.services.cron.PeriodicExecutorImpl$Job),
>   which is held by "monad-background-6"
> "monad-background-6":
>   waiting to lock monitor 0x00007f641c761868 (object 0x00000006bffbb7a8, a 
> org.apache.tapestry5.ioc.internal.services.cron.PeriodicExecutorImpl),
>   which is held by "Tapestry PeriodicExecutor"
> {color}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to