You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "John Lindwall (JIRA)" <ji...@apache.org> on 2015/07/20 23:08:04 UTC

[jira] [Created] (AMQ-5897) Slave fails to deliver messages

John Lindwall created AMQ-5897:
----------------------------------

             Summary: Slave fails to deliver messages
                 Key: AMQ-5897
                 URL: https://issues.apache.org/jira/browse/AMQ-5897
             Project: ActiveMQ
          Issue Type: Bug
          Components: Broker
    Affects Versions: 5.11.1, 5.10.0
         Environment: Solaris 5.11
            Reporter: John Lindwall



When a slave takes over for a failed master, pending messages are not delivered.

I have a 5.11 cluster consisting of 2 pairs of master/slaves: m1/s1 and m2/s2.  They use multicast://default for their networkConnectors.  1 subscriber, 1 publisher, also both using multicast urls. My subscriber is a durable subscriber. Msgs are persistent. 

I am testing system robustness in the face of a master failure.  I have 3 test cases, of which 2 behave as expected and 1 is problematic.  My publisher connects to a master, sends a set of 10 persistent messages and exits.  The subscriber (durable) receives a message and spends 1 sec simulating processing time, and waits for the next msg (auto-acknowledge). 

For each test case I connect the subscriber, then publish the message set, then kill a master after a few messages are received by the subscriber.  When the slave comes online I expect the remaining msgs to be delivered. 

1. subscribe to m2, publish to m2, kill m2. Messages are all delivered 
2. subscribe to m1, publish to m2, kill m2. Messages are all delivered 
3. subscribe to m1, publish to m2, kill m1. Remaining msgs are NOT DELIVERED :( 

In case #3, when m1 is killed I can see the subscriber reconnecting to m2.  The remaining messages are not delivered at that time though.

If I then connect the subscriber directly to s1 (using tcp:// url), the remaining msgs are indeed delivered. I would have expected s1 to route the remaining msgs to m2 during the test execution, but that did not happen. 

[After creating this case I will attach my activema.xml files and java code]




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)