Return-Path: X-Original-To: apmail-activemq-dev-archive@www.apache.org Delivered-To: apmail-activemq-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 74F8610728 for ; Wed, 18 Sep 2013 14:37:54 +0000 (UTC) Received: (qmail 45908 invoked by uid 500); 18 Sep 2013 14:37:54 -0000 Delivered-To: apmail-activemq-dev-archive@activemq.apache.org Received: (qmail 45832 invoked by uid 500); 18 Sep 2013 14:37:53 -0000 Mailing-List: contact dev-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@activemq.apache.org Delivered-To: mailing list dev@activemq.apache.org Received: (qmail 45738 invoked by uid 99); 18 Sep 2013 14:37:53 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 18 Sep 2013 14:37:53 +0000 Date: Wed, 18 Sep 2013 14:37:53 +0000 (UTC) From: "Dejan Bosanac (JIRA)" To: dev@activemq.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (AMQ-4533) Messages stuck in queue with redelivered=true MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/AMQ-4533?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dejan Bosanac updated AMQ-4533: ------------------------------- Attachment: AMQFreezeTest.zip It still unusual to me to call all these interrupts, as I cannot image a scenario in real life that will do the similar thing to the application. Anyhow, I did some changes to the configuration of thins I have a test that now passes all the time for me (please find it attached). Things that are changed: - one of the most important things is to move spring consumer to client acknowlegdment (look listener.xml). The spring container will synchronosuly receive messages and pass them to listener. So in case of the long running listener, the message is acked imidiatelly, which causes problems later. - conditionalNetworkBridgeFilterFactory policy and larger ttl, as consumers can come and go to different brokers and we need to be able to pass messages back and forth - ignoreIdleConsumers="true" as we don't want to kill connections of idle consumers - abortConnection="false" as we don't want to kill the connection just a misbehaving consumer Can you guys run this version of the test and see how it works for you? > Messages stuck in queue with redelivered=true > --------------------------------------------- > > Key: AMQ-4533 > URL: https://issues.apache.org/jira/browse/AMQ-4533 > Project: ActiveMQ > Issue Type: Bug > Components: JMS client > Affects Versions: 5.7.0 > Environment: Fuse Message Broker 5.7.0 > Reporter: Jason Shepherd > Assignee: Timothy Bish > Fix For: 5.9.0 > > Attachments: AMQ4533_logs.ZIP, AMQ4533Test.java, AMQ4533-test.patch, AMQ4533-Test.patch, AMQ4533-Test.patch, AMQ4533-Test.patch, AMQ4533-Test.patch, AMQ4533-Test.patch, AMQ4533TestPatch.txt, AMQ4533TestPatch.txt, AMQ4533TestPatch.txt, AMQFreezeFailingTest.zip, AMQFreeze_logs.zip, AMQFreezeTest.patch, AMQFreezeTest.zip, AMQFreezeTest.zip, kahaPendingMessages.zip > > > 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> -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira