ActiveMQ
  1. ActiveMQ
  2. AMQ-4533

Messages stuck in queue with redelivered=true

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 5.7.0
    • Fix Version/s: 5.10.0
    • Component/s: JMS client
    • Labels:
      None
    • Environment:

      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>

      1. kahaPendingMessages.zip
        24 kB
        Jason Shepherd
      2. AMQ4533TestPatch.txt
        35 kB
        Timothy Bish
      3. AMQ4533TestPatch.txt
        34 kB
        Timothy Bish
      4. AMQ4533TestPatch.txt
        27 kB
        Timothy Bish
      5. AMQ4533Test.java
        21 kB
        Gary Tully
      6. AMQ4533_logs.ZIP
        1.08 MB
        Wieslaw Dudek
      7. AMQFreezeTest.zip
        15 kB
        Wieslaw Dudek
      8. AMQFreeze_logs.zip
        26 kB
        Wieslaw Dudek
      9. AMQ4533-Test.patch
        36 kB
        Timothy Bish
      10. AMQ4533-Test.patch
        38 kB
        Timothy Bish
      11. AMQFreezeFailingTest.zip
        14 kB
        Wieslaw Dudek
      12. AMQ4533-Test.patch
        39 kB
        Timothy Bish
      13. AMQ4533-Test.patch
        39 kB
        Timothy Bish
      14. AMQ4533-Test.patch
        27 kB
        Timothy Bish
      15. AMQFreezeTest.patch
        40 kB
        Dejan Bosanac
      16. AMQ4533-test.patch
        43 kB
        Timothy Bish
      17. AMQFreezeTest.zip
        11 kB
        Dejan Bosanac
      18. AMQFreezeTest-5.8.0.fuse-72-SNAPSHOT-log.zip
        111 kB
        Wieslaw Dudek
      19. AMQFreezeTest-5.9.0.redhat-610084-log.zip
        1.57 MB
        Wieslaw Dudek
      20. LOGS_FAILED_5.9.0.redhat-610-SNAPSHOT.zip
        10.00 MB
        Wieslaw Dudek

        Issue Links

          Activity

          No work has yet been logged on this issue.

            People

            • Assignee:
              Timothy Bish
              Reporter:
              Jason Shepherd
            • Votes:
              1 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development