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

              Dates

              • Created:
                Updated:
                Resolved:

                Development