ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » Clustering » To communicate with a queue manager outside the cluster

Post new topic  Reply to topic Goto page 1, 2  Next
 To communicate with a queue manager outside the cluster « View previous topic :: View next topic » 
Author Message
ramesh.govindaswamy
PostPosted: Thu Jun 22, 2006 1:41 am    Post subject: To communicate with a queue manager outside the cluster Reply with quote

Apprentice

Joined: 25 Oct 2005
Posts: 42

Hi,

I am new to MQSeries So please bear with me.I am trying to communicate with a queue manager outside the cluster, one or more queue managers inside the cluster must act as a gateway.I am having QM1 in m/c1 and QM2,QM3 in m/c2.All Qmgrs comes under cluster and here QM1 and QM2 are Repoistary Qmgrs and QM3 is a gateway Qmgr.I am having CLUSQ1 in both QM1 and QM2 and through gateway qmgr i am able to put messages in the CLUSQ1.Here i am able to achieve load balancing.

Now i have created QM4 in m/c1 and it's not in cluster and qremote definiton for CLUSQ1 was created using cmd:

DEFINE QREMOTE(CLUSQ1) RNAME(CLUSQ1) RQMNAME(QM2) XMITQ(QM3)

and also i have created sender/receiver channel in QM4 to communicate with QM3.

When an application at QM4 issues an MQPUT call to put a message to CLUSQ1 the below exception occurs.

<<MQException thrown is : com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2196>>


I have set only MQC.MQOO_OUTPUT in open options.

Please any one help me to solve this problem.
Back to top
View user's profile Send private message Send e-mail
Vitor
PostPosted: Thu Jun 22, 2006 1:58 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

For clarification, the sender/receiver in QM4 that points to QM3 is servicing the xmitq QM3 isn't it? I ask as reason code 2196 = MQRC_UNKNOWN_XMIT_Q and you don't refer to it.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
ramesh.govindaswamy
PostPosted: Thu Jun 22, 2006 2:05 am    Post subject: Reply with quote

Apprentice

Joined: 25 Oct 2005
Posts: 42

Sorry vitor,
I couldn't able to understand.
Back to top
View user's profile Send private message Send e-mail
Vitor
PostPosted: Thu Jun 22, 2006 2:17 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

ramesh.govindaswamy wrote:
Sorry vitor,
I couldn't able to understand.


As well as defining the sender/receiver channels, have you defined an xmitq called QM3?

If you still couldn't able to understand, please post the definitions of the sender and receiver channels in QM4 that communicate with QM3
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
ramesh.govindaswamy
PostPosted: Thu Jun 22, 2006 2:42 am    Post subject: Reply with quote

Apprentice

Joined: 25 Oct 2005
Posts: 42

On QM4 I have created the following sender/reciever channel.

DEFINE CHANNEL(QM4.SDR) CHLTYPE(SDR) XMITQ(TRANQ3) CONNAME('<ip(port)>') DESCR('Sender channel for queue manager QM4')

DEFINE CHANNEL(QM4.RCVR) CHLTYPE(RCVR) DESCR('Receiver channel for queue manager QM4')

DEFINE QLOCAL(TRANQ3) USAGE(XMITQ)

So i have to put TRANQ3 in the XMITQ of QREMOTE defintion .Am i right?

DEFINE QREMOTE(CLUSQ1) RNAME(CLUSQ1) RQMNAME(QM2) XMITQ(QM3)
Back to top
View user's profile Send private message Send e-mail
vennela
PostPosted: Thu Jun 22, 2006 2:53 am    Post subject: Reply with quote

Jedi Knight

Joined: 11 Aug 2002
Posts: 4055
Location: Hyderabad, India

Also for this kind of clustering do not give RQMNAME.

DEFINE QREMOTE(CLUSQ1) RNAME(CLUSQ1) XMITQ(TRANQ3)
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Vitor
PostPosted: Thu Jun 22, 2006 3:09 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

ramesh.govindaswamy wrote:
On QM4 I have created the following sender/reciever channel.

DEFINE CHANNEL(QM4.SDR) CHLTYPE(SDR) XMITQ(TRANQ3) CONNAME('<ip(port)>') DESCR('Sender channel for queue manager QM4')

DEFINE CHANNEL(QM4.RCVR) CHLTYPE(RCVR) DESCR('Receiver channel for queue manager QM4')

DEFINE QLOCAL(TRANQ3) USAGE(XMITQ)

So i have to put TRANQ3 in the XMITQ of QREMOTE defintion .Am i right?

DEFINE QREMOTE(CLUSQ1) RNAME(CLUSQ1) RQMNAME(QM2) XMITQ(QM3)


I don't see what you mean by "I have put TRANQ3 in the XMITQ of QREMOTE definition". I think this is where your "unknown xmitq error is coming from"....
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
ramesh.govindaswamy
PostPosted: Thu Jun 22, 2006 4:06 am    Post subject: Reply with quote

Apprentice

Joined: 25 Oct 2005
Posts: 42

Thanz all...

Now the 2196 error has solved.

When an application at QM4 issues an MQPUT call to put a message to CLUSQ1,all the messages were got stored in TRANQ3.It's not get routed to QM1 or QM2 through Gateway Qmgr.Actually i want to achieve load balancing

What could be the problem?

Please any one help me to solve this problem
Back to top
View user's profile Send private message Send e-mail
Vitor
PostPosted: Thu Jun 22, 2006 4:13 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

ramesh.govindaswamy wrote:
all the messages were got stored in TRANQ3.


If all the messages are sitting in the xmitq, the channel's gone funny IMHO...

Have you changed the remote queue definition as vennela suggested?
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
ramesh.govindaswamy
PostPosted: Thu Jun 22, 2006 4:28 am    Post subject: Reply with quote

Apprentice

Joined: 25 Oct 2005
Posts: 42

The thing is if I create QRemote with RQMNAME(QM1) then all the messages are routed to QM1 alone.(No load balancing occurs)

DEFINE QREMOTE(CLUSQ1) RNAME(CLUSQ1) RQMNAME(QM1) XMITQ(TRANQ3)

If I create QRemote with RQNAME(QM3)(ie Gateway Qmgr) then message are not ruouted to QM1 or QM2 but channel is up and running.

DEFINE QREMOTE(CLUSQ1) RNAME(CLUSQ1) RQMNAME(QM3) XMITQ(TRANQ3)

If I create QRemote with out RQNAME() then it's throwing Exception
<<MQJE001: Completion Code 2, Reason 2087>>
Back to top
View user's profile Send private message Send e-mail
Vitor
PostPosted: Thu Jun 22, 2006 5:01 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

ramesh.govindaswamy wrote:

If I create QRemote with RQNAME(QM3)(ie Gateway Qmgr) then message are not ruouted to QM1 or QM2 but channel is up and running.

DEFINE QREMOTE(CLUSQ1) RNAME(CLUSQ1) RQMNAME(QM3) XMITQ(TRANQ3)



So in this situation your messages sit on the xmitq and are not transmitted, are not placed on any dead letter queues, just sit there unmoving even though the channel is up and running?
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
ramesh.govindaswamy
PostPosted: Thu Jun 22, 2006 5:12 am    Post subject: Reply with quote

Apprentice

Joined: 25 Oct 2005
Posts: 42

All the messages were moved to Dead Lead Q.
Back to top
View user's profile Send private message Send e-mail
Vitor
PostPosted: Thu Jun 22, 2006 7:53 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

What is the reason code given in the dead letter header??
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
vennela
PostPosted: Thu Jun 22, 2006 7:56 am    Post subject: Reply with quote

Jedi Knight

Joined: 11 Aug 2002
Posts: 4055
Location: Hyderabad, India

I have one suggestion
Why not name the XMITQ same as the REMOTE QMGR

On QM4 create a XMITQ called QM3
Alter the channel to use the new XMITQ
Back to top
View user's profile Send private message Send e-mail Visit poster's website
fjb_saper
PostPosted: Thu Jun 22, 2006 10:11 am    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

If you are moving messages from a non clustered qmgr to a cluster gateway qmgr and want load balancing, set up a cluster alias on the gateway. This should do it.
Enjoy
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic  Reply to topic Goto page 1, 2  Next Page 1 of 2

MQSeries.net Forum Index » Clustering » To communicate with a queue manager outside the cluster
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.