You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "matteo rulli (JIRA)" <ji...@apache.org> on 2014/03/31 12:53:16 UTC

[jira] [Created] (AMQ-5129) Substitute TimeTask with ScheduledExecutorService in org.apache.activemq.thread.Scheduler

matteo rulli created AMQ-5129:
---------------------------------

             Summary: Substitute TimeTask with ScheduledExecutorService in org.apache.activemq.thread.Scheduler
                 Key: AMQ-5129
                 URL: https://issues.apache.org/jira/browse/AMQ-5129
             Project: ActiveMQ
          Issue Type: Wish
    Affects Versions: 5.9.0
            Reporter: matteo rulli


Since Timer has only one execution thread, long-running task can affect other scheduled tasks. Besides, runtime exceptions thrown in TimerTasks kill the only one running thread, bringing down the entire Scheduler.

I have the suspect that all this could relate to AMQ-3938: sometimes in very busy environments I experience exaclty the same problem: a slow leakeage due to temp queues that are not deleted. Since org.apache.activemq.broker.region.RegionBroker uses a Scheduler to activate the purgeInactiveDestinations, a crashed timer could explain why purgeInactiveDestinations stops working.

I attached a tentative patch to migrate timer to ScheduledExecutorService. Hope this helps.



--
This message was sent by Atlassian JIRA
(v6.2#6252)