2 Replies Latest reply on Jun 28, 2007 1:16 PM by rkuryk

    JbossMQ Topic/Subscribers in a cluster

    rkuryk

      We have a topic/subscription model JMS system where we have messages that have multiple consumers. We have recently been working to get the system running in a clustered environment using the JMS-HA. The problem is that our messaging architecture worked fine when we were only a single node, but now the topic subscription model is working as it should and sending messages to all the consumers in our cluster. Is there a way to specify to only have the master node as the only consumer?

        • 1. Re: JbossMQ Topic/Subscribers in a cluster

          If you are using MDBs then deploy the them in deploy-hasingleton
          instead of deploy.

          • 2. Re: JbossMQ Topic/Subscribers in a cluster
            rkuryk

            We are deploying our MDBs under the deploy-hasingleton. If we try to deploy all the cluster nodes with the mdb-client-id's all being the same we receive the following exception :

            2007-06-28 10:31:51,958 ERROR [org.jboss.ejb.plugins.jms.JMSContainerInvoker] Reconnect failed: JMS provider failure detected for InvestmentBalanceLookup
            org.jboss.deployment.DeploymentException: Error during topic setup; - nested throwable: (javax.jms.InvalidClientIDException: This client id 'CCDurablesIBL' is already registered!)
            at org.jboss.deployment.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:53)
            ...
            Caused by: javax.jms.InvalidClientIDException: This client id 'CCDurablesIBL' is already registered!
            at org.jboss.mq.sm.AbstractStateManager.addLoggedOnClientId(AbstractStateManager.java:196)


            which caused us to use different mdb-client-id's across the cluster. I think the multiple entries in the jms_subscriptions tables is what is causing the other nodes in the cluster to pick up and process the messages.