Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
5.7.0
-
None
-
Fuse Message Broker 5.7.0
Description
We're getting message stuck in queues with the
redelivery flag set to true.
We used the following test model: put every 1 second 50 messages sequentially, and after that, the rest of 1000 msgs quickly to INPUT_QUEUE and
while starting 25 listeners cosuming from INPUT_QUEUE, which takes about 30 seconds to move the message to RECEIPT_QUEUE, 10 other listeners on RECEIPT_QUEUE consume and counts them.
We tried making one of the consumer slow by setting the
processing time to 100000 seconds (sleep) and putting a heavy load in
500 threads every 1 ms to some other queues the same time.
Our test case is attached, you might need to install some dependencies
to the local maven repository manually:
mvn install:install-file -DgroupId=org.apache.activemq
-DartifactId=activemq-core -Dversion=5.7.0-fuse-71-047 -Dpackaging=jar
-Dfile=activemq-core-5.7.0.fuse-71-047.jar
mvn install:install-file -DgroupId=org.apache.kahadb
-DartifactId=kahadb -Dversion=5.7.0-fuse-71-047 -Dpackaging=jar
-Dfile=kahadb-5.7.0.fuse-71-047.jar
mvn install:install-file
-DgroupId=org.apache.geronimo.management.specs
-DartifactId=geronimo-j2ee-management_1.1_spec -Dversion=1.0.1
-Dpackaging=jar -Dfile=geronimo-j2ee-management_1.1_spec-1.0.1.jar
mvn install:install-file -DgroupId=org.apache.activemq.pool
-DartifactId=activemq-pool -Dversion=5.7.0-fuse-71-047 -Dpackaging=jar
-Dfile=activemq-pool-5.7.0.fuse-71-047.jar
To run the test, simply use the Maven test target:
mvn clean test
If the problem occurs the you'll get a message like this in the test
results, (target/surefire-reports):
java.lang.AssertionError: Still messages in InputQueue expected:<0>
but was:<365>
Attachments
Attachments
Issue Links
- is related to
-
AMQ-4621 Provide a polling SlowConsumerPolicy that uses LastAck time on a sub
- Resolved