Details
-
Bug
-
Status: Resolved
-
Critical
-
Resolution: Fixed
-
5.4.2
-
None
-
CentOS 5.2
-
Patch Available
Description
If the ActiveMQ Journal Checkpoint worker thread dies for any reason, any updates to KahaDB trigger the thread to be restarted. Unfortunately, there is a race condition between the Thread.isAlive() check and the restart of the thread, potentially leading to multiple instances of the thread being spawned. We have observed in a busy environment as many as 8-10 instances of this thread, all waking up every 5 seconds to perform database checkpoints, bringing throughput on the broker to a halt.
The attached patch adds a lock around access to creation/destruction of this thread and prevents a second instance from being launched inadvertently.
Attachments
Attachments
Issue Links
- relates to
-
AMQ-3160 ConcurrentModificationException in ActiveMQ Journal Checkpoint Worker
- Resolved