T.Rob, Boy, do I feel a little dopey right now. I just spent all this time setting up all my queues on the gateway QM, expecting them to be accessible across the cluster. Now I find that I have to delete them, and recreate each queue on the particular node where I expect it to be read from.
Thank you for your patience and time in clarifying this for me. I am still not sure what I missed in the docs that spells this out clearly, so I guess I will have to take yet another look through them to see what else I missed. And my apologies to all of you who found yourselves reading through this discussion, thinking to yourself "what a yutz - he just doesn't get it!" Yup, that's me, the yutz from NYC. Regards, Dave A. -----Original Message----- From: Wyatt, T. Rob [mailto:[EMAIL PROTECTED] Sent: Thursday, June 24, 2004 4:05 PM To: 'Awerbuch, David (CALYON)'; MQSeries List (E-mail) Subject: RE: mmx can't open cluster queue - 2085 Dave, You don't have, as quoted from the manual, "a cluster queue on the local QMgr". You just have an entry in the repository. That's why when you do a "dis q(*)" it doesn't show up. You can't get messages from an entry in the repository! Clustering provides a namespace that extends to all the QMgrs in the cluster. Using that namespace, the cluster can route messages between QMgrs and auto-define channels as needed. But most everything else you know about MQ stays the same. Like with a remote queue, you can PUT messages to any queue in the cluster namespace (i.e. local or in the repository) but you can only GET messages from a local instance of a queue whether it's a cluster queue or not. That part doesn't change. So in the manual where they talk about "a cluster queue on the local QMgr" they are talking about a *local* queue that is shared in the cluster. It is available as a destination only to non-local QMgrs and as both a source AND a destination to the local QMgr. Hope that helps. -- T.Rob -----Original Message----- From: Awerbuch, David (CALYON) [mailto:[EMAIL PROTECTED] Sent: Thursday, June 24, 2004 3:39 PM To: MQSeries List (E-mail) Cc: Wyatt, T. Rob Subject: RE: mmx can't open cluster queue - 2085 T.Rob, It has been my understanding, from what I have read, that a cluster shared queue can be processed from all members QMs of the cluster. Or, are you saying that the readers of the queue must have a local definition of the queue as well? How do load-balancing configurations allow applications on multiple QMs to share the load of a single queue? Is there something that I am not understanding correctly? Are you saying that I have to have both the cluster definition and a local definition? I don't see why, though .... Excerpted fFrom the "Queue Manage Clusters" manual, "Concepts" section: "QM2 and QM3 host some queues that are accessible to any other queue manager in the cluster. These are called cluster queues. As with distributed queuing, an application uses the MQPUT call to put a message on a cluster queue at any queue manager. An application uses the MQGET call to <bold> retrieve messages from a cluster queue on the local queue manager. </bold>" (Emphasis is mine) To my application, ofac_qm is the local queue manager, and there is a cluster queue called gps.ofac: E:\Apps\mmx>runmqsc ofac_qm 5724-B41 (C) Copyright IBM Corp. 1994, 2002. ALL RIGHTS RESERVED. Starting MQSC for queue manager ofac_qm. dis qcluster(*) all 1 : dis qcluster(*) all AMQ8409: Display Queue details. DESCR(WebSphere MQ Default Local Queue) CLUSTER(pay_cluster) QUEUE(gps.ofac) CLUSQMGR(pay_gw_qm) QMID(pay_gw_qm_2004-06-23_15.52.35) CLUSDATE(2004-06-24) CLUSTIME(12.46.33) ALTDATE(2004-06-24) ALTTIME(11.32.37) CLUSQT(QLOCAL) TYPE(QCLUSTER) PUT(ENABLED) DEFPRTY(0) DEFPSIST(YES) DEFBIND(NOTFIXED) So, still, why can't I open the gps.ofac queue for input? Here are some more things I don't understand: runmqsc pay_gw_qm dis q(*) --> lists gps.ofac among others as a type(qlocal) dis q(gps.ofac) --> reports object not found dis qcluster(*) --> lists gps.ofac among others dis qcluster(gps.ofac) --> reports object not found dis qcluster(g*) --> reports object not found runmqsc ofac_qm dis q(*) --> reports only the SYSTEM.* queues dis qcluster(*) --> reports only gps.ofac as a queue, does not list any of the other clustered queues. All objects (queues, channels, etc) were created using MQExplorer; all the queues were defined on pay_gw_qm, for cluster pay_cluster; pay_gw_qm and ofac_qm are both members of pay_cluster (pay_gw_qm is a repository). I hope I have spelled out the picture completely. If there is any other information needed, please just ask for it. Thanks for everyone's future help. Dave A. -----Original Message----- From: Wyatt, T. Rob [mailto:[EMAIL PROTECTED] Sent: Thursday, June 24, 2004 2:51 PM To: [EMAIL PROTECTED] Subject: Re: mmx can't open cluster queue - 2085 Dave, If I read you right, you are trying to open a queue on pay_gw_qm from ofac_qm for input, right? Even in a clustering environment, the queue you are trying to open MUST be local on the QMgr to which you are connected. In this case, only processes connected to pay_gw_qm (either locally or via client) could open the specified queue. -- T.Rob -----Original Message----- From: MQSeries List [mailto:[EMAIL PROTECTED] Behalf Of Awerbuch, David (CALYON) Sent: Thursday, June 24, 2004 2:26 PM To: [EMAIL PROTECTED] Subject: mmx can't open cluster queue - 2085 Hello all, I've have a situation I can not figure out, I thought someone might be able to throw some light on it for me. I am setting up a proof of concept where I have a MQ cluster for each business unit, all queue for that cluster defined on a gateway QM, and the gateways talking to each other. I am using the MMX application from Roger's www.CapitalWare.biz website to try to read a message from a queue and write it back to another queue. The mmx.ini file contains: SequenceNumberFlag = N TimeOut = 99999 LogFile = gps_ofac_mmx.log PerformLogging = Y GetBufferSize = 102400 QMgrName = ofac_qm InputQName = gps.ofac OutputQCount = 1 OutputQName01 = ofac.gps Both the InputQ and OutputQ are defined on the Depository QM (pay_gw_qm) as local queues, shared in the cluster. Using MQExplorer, I see both queues in ofac_qm's Queue list. Yet, mmx is getting a 2085 when trying to open the queue: 2004/06/24 13:55:03 INFO Line#00700: ******************************************** 2004/06/24 13:55:03 INFO Line#00704: MMX is now starting. 2004/06/24 13:55:03 INFO Line#00714: Program Eyecatcher is MMX 01.00.00 Mar 5 2002 21:43:39 mmx.c 2004/06/24 13:55:03 INFO Line#00717: Current Log file is gps_ofac_mmx.log 2004/06/24 13:55:03 INFO Line#00720: PerformLogging=Y 2004/06/24 13:55:03 INFO Line#00988: The following are the parameters used for this execution. 2004/06/24 13:55:03 INFO Line#01006: Queue Manager Name: ofac_qm 2004/06/24 13:55:03 INFO Line#01024: Input Queue Name : gps.ofac 2004/06/24 13:55:03 INFO Line#01034: Output Queue Count: 1 2004/06/24 13:55:03 INFO Line#01057: Output Queue #01 : ofac.gps 2004/06/24 13:55:03 INFO Line#01070: TimeOut value : 99999 2004/06/24 13:55:03 INFO Line#01080: Get Bufffer Size : 102400 2004/06/24 13:55:03 INFO Line#01504: MQConn CC=0 RC=0 on connection to ofac_qm 2004/06/24 13:55:03 ERROR Line#01696: MQOpen CC=2 RC=2085 for gps.ofac 2004/06/24 13:55:03 INFO Line#01589: MQDisc CC=0 RC=0 on disconnecting from ofac_qm 2004/06/24 13:55:03 INFO Line#01126: Statistics of this executions: 2004/06/24 13:55:03 INFO Line#01136: Messages Read : 0 2004/06/24 13:55:03 INFO Line#01146: Messages Written : 0 2004/06/24 13:55:03 INFO Line#01152: MMX is now stopping. I don't understand why mmx can't open the queue for input. Can anyone offer some thoughts here? According to WMQ Messages manual: ================================== 2085 == MQRC_UNKNOWN_OBJECT_NAME An MQOPEN or MQPUT1 call was issued, but the object identified by the ObjectName and ObjectQMgrName fields in the object descriptor MQOD cannot be found. One of the following applies: * The ObjectQMgrName field is one of the following: * Blank * The name of the local queue manager * The name of a local definition of a remote queue (a queue-manager alias) in which the RemoteQMgrName attribute is the name of the local queue manager but no object with the specified ObjectName and ObjectType exists on the local queue manager. * The object being opened is a cluster queue that is hosted on a remote queue manager, but the local queue manager does not have a defined route to the remote queue manager. * The object being opened is a queue definition that has QSGDISP(GROUP). Such definitions cannot be used with the MQOPEN and MQPUT1 calls. Corrective action: Specify a valid object name. Ensure that the name is padded to the right with blanks if necessary. If this is correct, check the queue definitions. ================================== The ObjectQMgrName field is being filled in the local queue manager name. I know this because I modified MMX.C to not fill in the qmgr name, and print a console message telling me it was not filled in; that message was displayed, yet the MQOPEN still failed with 2085. Does anyone have any ideas? Thanks, Dave A. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- David Awerbuch, Consultant Websphere Applications Specialist Calyon Securities (CSI) [EMAIL PROTECTED] MetroPark, NJ: (732) 590-7452 1301 6th Ave, NY: (212) 261-7247 *** Calyon **************************************************** This message and/or any attachments (the "message") is intended for the sole use of its addressee. If you are not the addressee, please immediately notify the sender and then destroy the message. The unauthorized disclosure, use, dissemination or copying (either whole or partial) of this e-mail, or any information it contains, is prohibited. E-mails are susceptible to alteration and their integrity cannot be guaranteed. As this message and/or any attachments may have been altered without our knowledge, its content is not legally binding on CALYON Corporate and Investment Bank. All rights reserved. Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com Archive: http://vm.akh-wien.ac.at/MQSeries.archive Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com Archive: http://vm.akh-wien.ac.at/MQSeries.archive Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com Archive: http://vm.akh-wien.ac.at/MQSeries.archive