Author |
Message
|
JD996 |
Posted: Tue Oct 20, 2009 5:07 pm Post subject: Round Robin - Not Working |
|
|
Newbie
Joined: 20 Oct 2009 Posts: 6
|
Hi Guys,
I'm having problems with round robin clustering. (MQ version 6)
There are 3 qmanagers:
QMGR A - External Qmanager with a remote queue definition pointing to QMGRB Cluster Q (x)
QMGR B - holds the clusterq x
QMGR C - holds the clusterq x
(Qmgr B and C are in a cluster and are both full repos).
When I send a message from the remote q, it only targets the queue on QMGR B, and never round robins to QMGR c (cluster Q x ),, why is this the case, and how can I get the round robin affect to work?
Thanks kindly in advance
Rgds,
Jd. |
|
Back to top |
|
 |
Vitor |
Posted: Tue Oct 20, 2009 5:32 pm Post subject: Re: Round Robin - Not Working |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
JD996 wrote: |
When I send a message from the remote q, it only targets the queue on QMGR B, and never round robins to QMGR c (cluster Q x ),, why is this the case, and how can I get the round robin affect to work?
|
Ensure the queue is opened by the application using BIND_NOT_FIXED rather than BIND_ON_OPEN. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
JD996 |
Posted: Tue Oct 20, 2009 6:33 pm Post subject: |
|
|
Newbie
Joined: 20 Oct 2009 Posts: 6
|
in this case the application resides on an external companys gateway, (i.e. they are putting the message to their remote queue, which needs to targed two of our cluster queues, in a round robin scenario.. |
|
Back to top |
|
 |
Sam Uppu |
Posted: Tue Oct 20, 2009 6:33 pm Post subject: |
|
|
 Yatiri
Joined: 11 Nov 2008 Posts: 610
|
or define the cluster queue with DEFBIND(NOTFIXED).
Thanks. |
|
Back to top |
|
 |
JD996 |
Posted: Tue Oct 20, 2009 6:38 pm Post subject: |
|
|
Newbie
Joined: 20 Oct 2009 Posts: 6
|
Sam Uppu wrote: |
or define the cluster queue with DEFBIND(NOTFIXED).
Thanks. |
hmm, still just hits the local cluster q on QMGR B and does not ever go to C |
|
Back to top |
|
 |
Sam Uppu |
Posted: Tue Oct 20, 2009 6:43 pm Post subject: |
|
|
 Yatiri
Joined: 11 Nov 2008 Posts: 610
|
Also add the CLWLUSEQ(ANY) along with DEFBIND(NOTFIXED) on cluster queue. |
|
Back to top |
|
 |
JD996 |
Posted: Tue Oct 20, 2009 7:40 pm Post subject: |
|
|
Newbie
Joined: 20 Oct 2009 Posts: 6
|
Sam Uppu wrote: |
Also add the CLWLUSEQ(ANY) along with DEFBIND(NOTFIXED) on cluster queue. |
Still an issue unfortunately. If I set both these properties, the message just goes to QMGR B and not C. If I also set the cluster Q to inhibit puts, the message goes to QMGR B's DLQ (as it cant locate the target queue).. |
|
Back to top |
|
 |
JD996 |
Posted: Tue Oct 20, 2009 8:28 pm Post subject: |
|
|
Newbie
Joined: 20 Oct 2009 Posts: 6
|
Important thing to note..
When a cluster q is targetted through an externally remote queue, it doesnt round robin, however if a msg is put directly to the cluster q, it does.. |
|
Back to top |
|
 |
fjb_saper |
Posted: Wed Oct 21, 2009 1:51 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
JD996 wrote: |
Important thing to note..
When a cluster q is targetted through an externally remote queue, it doesnt round robin, however if a msg is put directly to the cluster q, it does.. |
If the qmgr doing the put is not part of the cluster (and I surmise it is not), did you define a cluster alias on the "gateway" qmgr? Did you have the sender use this cluster alias?
chapter of cluster manual telling how to send from a qmgr outside the cluster  _________________ MQ & Broker admin |
|
Back to top |
|
 |
PeterPotkay |
Posted: Wed Oct 21, 2009 3:49 am Post subject: |
|
|
 Poobah
Joined: 15 May 2001 Posts: 7722
|
JD996 wrote: |
Important thing to note..
When a cluster q is targetted through an externally remote queue, it doesnt round robin, however if a msg is put directly to the cluster q, it does.. |
I would guess their remote q def is aimed specifically at QMGR B.
It should be aimed at a Cluster QM Alias Name, and then you need a corresponding QM Alias on your side to blank out the destination QM Alias Name in the message header, thus allowing round robining to occur.
If the message arrives addressed to QMGR B, it will only go to QMGR B. _________________ Peter Potkay
Keep Calm and MQ On |
|
Back to top |
|
 |
Vitor |
Posted: Wed Oct 21, 2009 3:57 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Sam Uppu wrote: |
or define the cluster queue with DEFBIND(NOTFIXED). |
This is just a default, like priority or persistence. If the app explicitly sets the attribute you can change the default all you like with no effect. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
bruce2359 |
Posted: Wed Oct 21, 2009 6:03 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
Quote: |
This is just a default, like priority or persistence. |
This is just a queue definition attribute value, NOT a default; just as priority and persistence are queue attributes.
From the WMQ App Programming Ref:
DefBind (MQLONG)
This is the default binding that is used when MQOO_BIND_AS_Q_DEF is
specified on the MQOPEN call and the queue is a cluster queue.
The value is one of the following:
MQBND_BIND_ON_OPEN
Binding fixed by MQOPEN call.
MQBND_BIND_NOT_FIXED
Binding not fixed.
To determine the value of this attribute, use the MQIA_DEF_BIND selector with
the MQINQ call _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
Sam Uppu |
Posted: Wed Oct 21, 2009 6:28 am Post subject: |
|
|
 Yatiri
Joined: 11 Nov 2008 Posts: 610
|
To add it to Peters point, this link may be helpful in defining the Alias QMgr.
Thanks. |
|
Back to top |
|
 |
shashivarungupta |
Posted: Wed Oct 21, 2009 9:23 am Post subject: |
|
|
 Grand Master
Joined: 24 Feb 2009 Posts: 1343 Location: Floating in space on a round rock.
|
for round robin in a cluster...pls check..
* Qmgr is the part of that cluster at all or not ?
* Queue is shared in that cluster or not ?
* DEFBIND feature on the queue(s) ? Should be BIND_NOT_FIXED
* Read QMGR ALIAS (in your case, as correctly suggested by fjb_saper) and implement it correctly.
* In one of the cases, I remember few files were missing in MQ Library (that were given in a patch/fix pack ) which was required in to fix round robin in a cluster. IBM provided that patch, unfortunately I don't remember that patch details now(apologies). You can consult IBM if you are not able to solve this issue. _________________ *Life will beat you down, you need to decide to fight back or leave it. |
|
Back to top |
|
 |
shashivarungupta |
Posted: Wed Oct 21, 2009 9:27 am Post subject: |
|
|
 Grand Master
Joined: 24 Feb 2009 Posts: 1343 Location: Floating in space on a round rock.
|
for round robin.. there are other posts in the forum.. you can of course look at them..i believe it would be helpful for you.
Thanks. _________________ *Life will beat you down, you need to decide to fight back or leave it. |
|
Back to top |
|
 |
|