activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "opticyclic (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (AMQ-3848) Messages Are Not Read With Multiple Consumers
Date Fri, 18 May 2012 17:43:08 GMT

     [ https://issues.apache.org/jira/browse/AMQ-3848?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

opticyclic updated AMQ-3848:
----------------------------

    Description: 
I am using Spring 3.1 and ActiveMQ 5.5.1 with Camel 2.9.0 although I can duplicate it with
various different versions.

I do the following:
Put some messages on one queue (Queue2Queue.Inbound)
Add a JMS header and put it on a new queue (Queue2Queue.Inbound.0)
Read off the new queue with 20 threads
Put them on a third queue (Queue2Queue.DLQ)

Here is a snippet of the Camel setup.
{code}
  public void configure() throws Exception {
    String inboundQueue = "activemq:" + testProperties.getProperty(Queue2QueueCamelRunner.INBOUND_MQ_QUEUE);
    from(DIRECT_START)
      .to(inboundQueue)
      .process(headerEnricher)
      .to(inboundQueue + ".0");

    String processingQueue = inboundQueue + ".0?concurrentConsumers=20";
    from(processingQueue)
      .to("activemq:Queue2Queue.DLQ");
  }
{code}

My attached test case puts 10, 100 and 1000 messages on the queue then counts them.
The results I get are:
10=10
100=100
1000!=1000

When I run in the embedded ActiveMQ I often see 200 messages missing.
When I run it on the deployed version I will see 1110 messages listed in the Web Console but
only 867 when I drill down (or if I use a browser like HermesJMS).




  was:
I am using Spring 3.1 and ActiveMQ 5.5.1 with Camel 2.9.0 although I can duplicate it with
various different versions.

I do the following:
Put some messages on one queue (Queue2Queue.Inbound)
Add a JMS header and put it on a new queue (Queue2Queue.Inbound.0)
Read off the new queue with 20 threads
Put them on a third queue (Queue2Queue.DLQ)

Here is a snippet of the Camel setup.
{code}
  public void configure() throws Exception {
    String inboundQueue = "activemq:" + testProperties.getProperty(Queue2QueueCamelRunner.INBOUND_MQ_QUEUE);
    from(DIRECT_START)
      .to(inboundQueue)
      .process(headerEnricher)
      .to(inboundQueue + ".0");

    String processingQueue = inboundQueue + ".0?concurrentConsumers=20";
    from(processingQueue)
      .to("activemq:Queue2Queue.DLQ");
  }
{code}

My attached test case puts 10, 100 and 1000 messages on the queue then counts them.
The results I get are:
10=10
100=100
1000!=1000

When I run in the embedded ActiveMQ I often see 200 messages missing.
When I run it on the deployed version I will see 1110 messages listed in the Web Console but
only 870 when I drill down (or if I use a browser like HermesJMS).




       Priority: Minor  (was: Blocker)

It seems that the method of counting the messages in the test case was flawed when running
against the embedded version and it doesn't duplicate the issue we are seeing in production.

                
> Messages Are Not Read With Multiple Consumers
> ---------------------------------------------
>
>                 Key: AMQ-3848
>                 URL: https://issues.apache.org/jira/browse/AMQ-3848
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: activemq-camel
>    Affects Versions: 5.2.0, 5.4.2, 5.5.1, 5.6.0
>            Reporter: opticyclic
>            Priority: Minor
>         Attachments: ActiveMQIssue.zip
>
>
> I am using Spring 3.1 and ActiveMQ 5.5.1 with Camel 2.9.0 although I can duplicate it
with various different versions.
> I do the following:
> Put some messages on one queue (Queue2Queue.Inbound)
> Add a JMS header and put it on a new queue (Queue2Queue.Inbound.0)
> Read off the new queue with 20 threads
> Put them on a third queue (Queue2Queue.DLQ)
> Here is a snippet of the Camel setup.
> {code}
>   public void configure() throws Exception {
>     String inboundQueue = "activemq:" + testProperties.getProperty(Queue2QueueCamelRunner.INBOUND_MQ_QUEUE);
>     from(DIRECT_START)
>       .to(inboundQueue)
>       .process(headerEnricher)
>       .to(inboundQueue + ".0");
>     String processingQueue = inboundQueue + ".0?concurrentConsumers=20";
>     from(processingQueue)
>       .to("activemq:Queue2Queue.DLQ");
>   }
> {code}
> My attached test case puts 10, 100 and 1000 messages on the queue then counts them.
> The results I get are:
> 10=10
> 100=100
> 1000!=1000
> When I run in the embedded ActiveMQ I often see 200 messages missing.
> When I run it on the deployed version I will see 1110 messages listed in the Web Console
but only 867 when I drill down (or if I use a browser like HermesJMS).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message