You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Gary Tully (JIRA)" <ji...@apache.org> on 2009/07/22 11:45:34 UTC

[jira] Commented: (AMQ-2183) Master/slave out of sync with multiple consumers of a VirtualTopic on the same broker

    [ https://issues.apache.org/activemq/browse/AMQ-2183?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52894#action_52894 ] 

Gary Tully commented on AMQ-2183:
---------------------------------

I added a test case to try and understand this issue and reproduce but I am missing some information. In a pure master slave setup, how can you have a producer connected to brokerA and consumers connected to brokerB at the same time?

Can you modify the test case: activemq-core/src/test/java/org/apache/activemq/bugs/AMQ2183Test.java to demonstrate the problem?

> Master/slave out of sync with multiple consumers of a VirtualTopic on the same broker
> -------------------------------------------------------------------------------------
>
>                 Key: AMQ-2183
>                 URL: https://issues.apache.org/activemq/browse/AMQ-2183
>             Project: ActiveMQ
>          Issue Type: Bug
>    Affects Versions: 5.2.0
>         Environment: solaris 10
>            Reporter: ying
>            Assignee: Gary Tully
>            Priority: Blocker
>             Fix For: 5.3.0
>
>         Attachments: ActiveMQMessageAuditWithDestination.java, AMQ-2183.patch
>
>
> 1. producer of VirtualTopic.testTopic publish message to brokerA
> 2. consumer 1 on brokerB with "Consumer.A.VirtualTopic.testTopic
>     consumer 2 on brokerB with "Consumer.A2.VirtualTopic.testTopic
> 3. brokerA and brokerB are bridged.
> Result: you will get 
> ERROR MasterBroker - Slave Failed
> javax.jms.JMSException: Slave broker out of sync with master - Message: ID:yhe-1337-1236273055924-0:16:1:1:738 on queue does not exist among pending(0) for subscription: ID:yhe-3603-1236271682179-0:13:1:1
> Reason:
> In TransactionBroker.java there is a ActiveMQMessageAudit and it will be configured if the broker is a slave. ActiveMQMessageAudit is using the messageId alone to check whether the message is a duplicate. The message for consumer2 will be ignored as duplicate and not saved to the message store because consumer1's same message arrives early.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.