Uploaded image for project: 'ActiveMQ Classic'
  1. ActiveMQ Classic
  2. AMQ-4533

Messages stuck in queue with redelivered=true

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 5.7.0
    • 5.10.0
    • JMS client
    • 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

        1. kahaPendingMessages.zip
          24 kB
          Jason Shepherd
        2. AMQ4533TestPatch.txt
          35 kB
          Timothy A. Bish
        3. AMQ4533TestPatch.txt
          34 kB
          Timothy A. Bish
        4. AMQ4533TestPatch.txt
          27 kB
          Timothy A. 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 A. Bish
        10. AMQ4533-Test.patch
          38 kB
          Timothy A. Bish
        11. AMQFreezeFailingTest.zip
          14 kB
          Wieslaw Dudek
        12. AMQ4533-Test.patch
          39 kB
          Timothy A. Bish
        13. AMQ4533-Test.patch
          39 kB
          Timothy A. Bish
        14. AMQ4533-Test.patch
          27 kB
          Timothy A. Bish
        15. AMQFreezeTest.patch
          40 kB
          Dejan Bosanac
        16. AMQ4533-test.patch
          43 kB
          Timothy A. 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

            People

              tabish Timothy A. Bish
              jshepher Jason Shepherd
              Votes:
              1 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: