Search code examples
msmqcluster-computingfailover

MSMQ Cluster losing messages on failover


I've got a MSMQ Cluster setup with nodes (active/passive) that share a drive.

Here are the tests I'm performing. I send messages to the queue that are recoverable. I then take the MSMQ cluster group offline and then bring it online again.

Result: The messages are still there.

I then simulate failover by moving the group to node 2. Moves over successfully, but the messages aren't there.

I'm sending the messages as recoverable and the MSMQ cluster group has a drive that both nodes can access.

Anyone?

More Info:

The Quorum drive stays only on node 1.

I have two service/app groups. One MSMQ and one that is a generic service group.

Even more info:

When node 1 is active, I pump it full of messages. Failover to node 2. 0 message in the queue for 02. Then I failover back to 01, and the messages are in 01.


Solution

  • You haven't clustered MSMQ or aren't using clustered MSMQ properly. What you are looking at are the local MSMQ services.

    http://blogs.msdn.com/b/johnbreakwell/archive/2008/02/18/clustering-msmq-applications-rule-1.aspx

    Cheers John

    ==================================

    OK, maybe the drive letter being used isn't consistently implemented.

    1. What is the storage location being used by clustered MSMQ?
    2. If you open this storage location up in Explorer from Node 1 AND Node 2 at the same time, are the folder contents exactly the same? If you create a text file via Node 1's Explorer window, does it appear after a refresh in Node 2's Explorer window?