Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Cannot Reproduce
-
5.4.3, 5.6.0, 5.7.0
-
None
-
Red Hat Enterprise Linux Server release 6.1 (Santiago)
Description
When sending messages to a queue and waiting for the expiration task to expire them, only some of the expired messages are moved to the DLQ. Other expired messages (With same expiration time as the ones moved to the DLQ) just sit in the queue, stuck until all messages in the queue expire, at which point they are all moved to the DLQ.
This seems to happen only in the embedded broker (configured in activemq.xml) and only for some messages (It seems the size of the message however I am uncertain if the content could actually cause such an issue).
A Unit Test is provided that shows the issue. The unit test includes a boolean that can be changed to run it towards a created broker (instead of the embedded one) for comparison purposes.
An activemq configuration file (activemq.xml) is also provided as it is the only file that has been changed from default installation.
Test were done on activeMQ running on both JDK 1.7.0_03 and 1.6.0_33 with the activemq executable script being pointed towards those versions (Instead of "auto").