Coombs, Lawrence
2013-10-04 03:43:55 UTC
Thanks to Michael Dag for figuring this out, it now works!!!!
Here are the definitions.
There are three queue managers, QM1 (sender), QM2 (receiver-1) and QM3(receiver2).
Define on QM1 (The sending queue manager):
* Define an alias queue of type TOPIC
def qalias('NQSX.IAS.INVENTORY.QA99') +
TARGET('NQSXRTIINVY') +
DEFBIND(NOTFIXED) +
TARGTYPE(TOPIC) replace
* Define a TOPIC where the topic string matches the TARGET attribute in the QALIAS above
def TOPIC('NQSXRTIINVY') +
TOPICSTR('NQSXRTIINVY') replace
* Define a subscription for the Topic String above
def sub(NQSXRTIINV8) TOPICSTR('NQSXRTIINVY') +
DEST('NQSX.IAS.INVENTORY.QA98') replace **** Note: This is a cluster alias that is defined on BOTH QM2 and QM2 ******
Define on QM2 (Receiver-1 queue manager):
* Define cluster alias
def qalias('NQSX.IAS.INVENTORY.QA98') +
TARGET('NQSXRTIINVZ') +
DEFBIND(NOTFIXED) +
CLUSTER('MDS0TCL3') +
TARGTYPE(TOPIC) replace
* Define a TOPIC (LOCAL)
def topic('NQSXRTIINVZ') +
TOPICSTR('NQSXRTIINVZ') replace
* Define two subscriptions to the above TOPIC (one for each LOCAL queue)
def sub(sub1) TOPICSTR('NQSXRTIINVZ') +
DEST('NQSX.IAS.INVENTORY.QL01') replace
def sub(sub2) TOPICSTR('NQSXRTIINVZ') +
DEST('NQSX.IAS.INVENTORY.QL02') replace
* Define the two LOCAL queues
def ql('NQSX.IAS.INVENTORY.QL01') replace
def ql('NQSX.IAS.INVENTORY.QL02') replace
Define on QM3(Receiver-2 queue manager):
* Define cluster alias
def qalias('NQSX.IAS.INVENTORY.QA98') +
TARGET('NQSXRTIINVZ') +
DEFBIND(NOTFIXED) +
CLUSTER('MDS0TCL3') +
TARGTYPE(TOPIC) replace
* Define a TOPIC (LOCAL)
def topic('NQSXRTIINVZ') +
TOPICSTR('NQSXRTIINVZ') replace
* Define two subscriptions to the above TOPIC (one for each LOCAL queue)
def sub(sub1) TOPICSTR('NQSXRTIINVZ') +
DEST('NQSX.IAS.INVENTORY.QL01') replace
def sub(sub2) TOPICSTR('NQSXRTIINVZ') +
DEST('NQSX.IAS.INVENTORY.QL02') replace
* Define the two LOCAL queues
def ql('NQSX.IAS.INVENTORY.QL01') replace
def ql('NQSX.IAS.INVENTORY.QL02') replace
============================================================================================================================================
Notes:
CURDEPTH on QM2 AFTER putting 13 messages twice to the alias:
Starting MQSC for queue manager SQAT0261.
dis ql(nqsx.ias.*) curdepth
1 : dis ql(nqsx.ias.*) curdepth
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL01) TYPE(QLOCAL)
CURDEPTH(0)
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL02) TYPE(QLOCAL)
CURDEPTH(0)
dis ql(nqsx.ias.*) curdepth
2 : dis ql(nqsx.ias.*) curdepth
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL01) TYPE(QLOCAL)
CURDEPTH(7)
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL02) TYPE(QLOCAL)
CURDEPTH(7)
dis ql(nqsx.ias.*) curdepth
3 : dis ql(nqsx.ias.*) curdepth
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL01) TYPE(QLOCAL)
CURDEPTH(13)
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL02) TYPE(QLOCAL)
CURDEPTH(13)
CURDEPTH on QM3 AFTER putting 13 messages twice to the alias:
Starting MQSC for queue manager SQAT0264.
dis ql(nqsx.ias.*) curdepth
1 : dis ql(nqsx.ias.*) curdepth
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL01) TYPE(QLOCAL)
CURDEPTH(0)
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL02) TYPE(QLOCAL)
CURDEPTH(0)
dis ql(nqsx.ias.*) curdepth
2 : dis ql(nqsx.ias.*) curdepth
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL01) TYPE(QLOCAL)
CURDEPTH(6)
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL02) TYPE(QLOCAL)
CURDEPTH(6)
dis ql(nqsx.ias.*) curdepth
3 : dis ql(nqsx.ias.*) curdepth
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL01) TYPE(QLOCAL)
CURDEPTH(13)
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL02) TYPE(QLOCAL)
CURDEPTH(13)
==========================================================================================================
This is the amqsput:
./amqsput NQSX.IAS.INVENTORY.QA99 SQAT0001
Sample AMQSPUT0 start
target queue is NQSX.IAS.INVENTORY.QA99
1
2
3
4
5
6
7
8
9
10
11
12
13
Sample AMQSPUT0 end
$ ./amqsput NQSX.IAS.INVENTORY.QA99 SQAT0001
Sample AMQSPUT0 start
target queue is NQSX.IAS.INVENTORY.QA99
1
2
3
4
5
6
7
8
9
10
11
12
13
Sample AMQSPUT0 end
This message, including any attachments, is the property of Sears Holdings Corporation and/or one of its subsidiaries. It is confidential and may contain proprietary or legally privileged information. If you are not the intended recipient, please delete it without reading the contents. Thank you.
To unsubscribe, write to LISTSERV-0lvw86wZMd9k/bWDasg6f+***@public.gmane.org and,
in the message body (not the subject), write: SIGNOFF MQSERIES
Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://listserv.meduniwien.ac.at/archives/mqser-l.html
Here are the definitions.
There are three queue managers, QM1 (sender), QM2 (receiver-1) and QM3(receiver2).
Define on QM1 (The sending queue manager):
* Define an alias queue of type TOPIC
def qalias('NQSX.IAS.INVENTORY.QA99') +
TARGET('NQSXRTIINVY') +
DEFBIND(NOTFIXED) +
TARGTYPE(TOPIC) replace
* Define a TOPIC where the topic string matches the TARGET attribute in the QALIAS above
def TOPIC('NQSXRTIINVY') +
TOPICSTR('NQSXRTIINVY') replace
* Define a subscription for the Topic String above
def sub(NQSXRTIINV8) TOPICSTR('NQSXRTIINVY') +
DEST('NQSX.IAS.INVENTORY.QA98') replace **** Note: This is a cluster alias that is defined on BOTH QM2 and QM2 ******
Define on QM2 (Receiver-1 queue manager):
* Define cluster alias
def qalias('NQSX.IAS.INVENTORY.QA98') +
TARGET('NQSXRTIINVZ') +
DEFBIND(NOTFIXED) +
CLUSTER('MDS0TCL3') +
TARGTYPE(TOPIC) replace
* Define a TOPIC (LOCAL)
def topic('NQSXRTIINVZ') +
TOPICSTR('NQSXRTIINVZ') replace
* Define two subscriptions to the above TOPIC (one for each LOCAL queue)
def sub(sub1) TOPICSTR('NQSXRTIINVZ') +
DEST('NQSX.IAS.INVENTORY.QL01') replace
def sub(sub2) TOPICSTR('NQSXRTIINVZ') +
DEST('NQSX.IAS.INVENTORY.QL02') replace
* Define the two LOCAL queues
def ql('NQSX.IAS.INVENTORY.QL01') replace
def ql('NQSX.IAS.INVENTORY.QL02') replace
Define on QM3(Receiver-2 queue manager):
* Define cluster alias
def qalias('NQSX.IAS.INVENTORY.QA98') +
TARGET('NQSXRTIINVZ') +
DEFBIND(NOTFIXED) +
CLUSTER('MDS0TCL3') +
TARGTYPE(TOPIC) replace
* Define a TOPIC (LOCAL)
def topic('NQSXRTIINVZ') +
TOPICSTR('NQSXRTIINVZ') replace
* Define two subscriptions to the above TOPIC (one for each LOCAL queue)
def sub(sub1) TOPICSTR('NQSXRTIINVZ') +
DEST('NQSX.IAS.INVENTORY.QL01') replace
def sub(sub2) TOPICSTR('NQSXRTIINVZ') +
DEST('NQSX.IAS.INVENTORY.QL02') replace
* Define the two LOCAL queues
def ql('NQSX.IAS.INVENTORY.QL01') replace
def ql('NQSX.IAS.INVENTORY.QL02') replace
============================================================================================================================================
Notes:
CURDEPTH on QM2 AFTER putting 13 messages twice to the alias:
Starting MQSC for queue manager SQAT0261.
dis ql(nqsx.ias.*) curdepth
1 : dis ql(nqsx.ias.*) curdepth
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL01) TYPE(QLOCAL)
CURDEPTH(0)
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL02) TYPE(QLOCAL)
CURDEPTH(0)
dis ql(nqsx.ias.*) curdepth
2 : dis ql(nqsx.ias.*) curdepth
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL01) TYPE(QLOCAL)
CURDEPTH(7)
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL02) TYPE(QLOCAL)
CURDEPTH(7)
dis ql(nqsx.ias.*) curdepth
3 : dis ql(nqsx.ias.*) curdepth
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL01) TYPE(QLOCAL)
CURDEPTH(13)
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL02) TYPE(QLOCAL)
CURDEPTH(13)
CURDEPTH on QM3 AFTER putting 13 messages twice to the alias:
Starting MQSC for queue manager SQAT0264.
dis ql(nqsx.ias.*) curdepth
1 : dis ql(nqsx.ias.*) curdepth
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL01) TYPE(QLOCAL)
CURDEPTH(0)
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL02) TYPE(QLOCAL)
CURDEPTH(0)
dis ql(nqsx.ias.*) curdepth
2 : dis ql(nqsx.ias.*) curdepth
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL01) TYPE(QLOCAL)
CURDEPTH(6)
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL02) TYPE(QLOCAL)
CURDEPTH(6)
dis ql(nqsx.ias.*) curdepth
3 : dis ql(nqsx.ias.*) curdepth
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL01) TYPE(QLOCAL)
CURDEPTH(13)
AMQ8409: Display Queue details.
QUEUE(NQSX.IAS.INVENTORY.QL02) TYPE(QLOCAL)
CURDEPTH(13)
==========================================================================================================
This is the amqsput:
./amqsput NQSX.IAS.INVENTORY.QA99 SQAT0001
Sample AMQSPUT0 start
target queue is NQSX.IAS.INVENTORY.QA99
1
2
3
4
5
6
7
8
9
10
11
12
13
Sample AMQSPUT0 end
$ ./amqsput NQSX.IAS.INVENTORY.QA99 SQAT0001
Sample AMQSPUT0 start
target queue is NQSX.IAS.INVENTORY.QA99
1
2
3
4
5
6
7
8
9
10
11
12
13
Sample AMQSPUT0 end
This message, including any attachments, is the property of Sears Holdings Corporation and/or one of its subsidiaries. It is confidential and may contain proprietary or legally privileged information. If you are not the intended recipient, please delete it without reading the contents. Thank you.
To unsubscribe, write to LISTSERV-0lvw86wZMd9k/bWDasg6f+***@public.gmane.org and,
in the message body (not the subject), write: SIGNOFF MQSERIES
Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://listserv.meduniwien.ac.at/archives/mqser-l.html