Author |
Message
|
hughson |
Posted: Tue Jan 29, 2019 11:04 pm Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
hisham.rakha wrote: |
I excused the above put msg but landed up in the Gateway QMgr with error "MQRC_UNKNOWN_REMOTE_Q_MGR", hereunder the DLH
00000 44 4C 48 20 00 00 00 01--00 00 08 27 4C 51 5F 54 |DLH .......'LQ_T|
00010 32 34 5F 4F 55 54 20 20--20 20 20 20 20 20 20 20 |24_OUT |
00020 20 20 20 20 20 20 20 20--20 20 20 20 20 20 20 20 | |
00030 20 20 20 20 20 20 20 20--20 20 20 20 45 53 42 4D | ESBM|
00040 51 30 31 53 54 47 43 44--31 20 20 20 20 20 20 20 |Q01STGCD1 |
00050 20 20 20 20 20 20 20 20--20 20 20 20 20 20 20 20 | |
00060 20 20 20 20 20 20 20 20--20 20 20 20 00 00 01 11 | ....|
00070 00 00 03 33 4D 51 53 54--52 20 20 20 00 00 00 06 |...3MQSTR ....|
00080 61 6D 71 72 6D 70 70 61--20 20 20 20 20 20 20 20 |amqrmppa |
00090 20 20 20 20 20 20 20 20--20 20 20 20 32 30 31 39 | 2019|
000A0 30 31 33 30 30 36 33 39--34 31 34 31 74 65 73 74 |013006394141test| |
That says that the channel has failed to do a put to LQ_T24_OUT on QMgr: ESBMQ01STGCD1. And yet the gateway queue manager is in a cluster with queue manager ESBMQ01STGCD1 so it should know it. To test the queue name resolution, what happens if you run amqsput on the gateway queue manager thus:-
Code: |
amqsput LQ_T24_OUT GWYMQ01STGDC1 |
Cheers,
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
hisham.rakha |
Posted: Wed Jan 30, 2019 12:32 am Post subject: |
|
|
Apprentice
Joined: 13 Nov 2018 Posts: 39
|
hughson wrote: |
hisham.rakha wrote: |
I excused the above put msg but landed up in the Gateway QMgr with error "MQRC_UNKNOWN_REMOTE_Q_MGR", hereunder the DLH
00000 44 4C 48 20 00 00 00 01--00 00 08 27 4C 51 5F 54 |DLH .......'LQ_T|
00010 32 34 5F 4F 55 54 20 20--20 20 20 20 20 20 20 20 |24_OUT |
00020 20 20 20 20 20 20 20 20--20 20 20 20 20 20 20 20 | |
00030 20 20 20 20 20 20 20 20--20 20 20 20 45 53 42 4D | ESBM|
00040 51 30 31 53 54 47 43 44--31 20 20 20 20 20 20 20 |Q01STGCD1 |
00050 20 20 20 20 20 20 20 20--20 20 20 20 20 20 20 20 | |
00060 20 20 20 20 20 20 20 20--20 20 20 20 00 00 01 11 | ....|
00070 00 00 03 33 4D 51 53 54--52 20 20 20 00 00 00 06 |...3MQSTR ....|
00080 61 6D 71 72 6D 70 70 61--20 20 20 20 20 20 20 20 |amqrmppa |
00090 20 20 20 20 20 20 20 20--20 20 20 20 32 30 31 39 | 2019|
000A0 30 31 33 30 30 36 33 39--34 31 34 31 74 65 73 74 |013006394141test| |
That says that the channel has failed to do a put to LQ_T24_OUT on QMgr: ESBMQ01STGCD1. And yet the gateway queue manager is in a cluster with queue manager ESBMQ01STGCD1 so it should know it. To test the queue name resolution, what happens if you run amqsput on the gateway queue manager thus:-
Code: |
amqsput LQ_T24_OUT GWYMQ01STGDC1 |
Cheers,
Morag |
Sent successfully to LQ_T24_OUT once to QMgr ESBMQ01STGCD1 and once to QMgr ESBMQ02STGCD1 |
|
Back to top |
|
 |
hughson |
Posted: Wed Jan 30, 2019 12:39 am Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
hisham.rakha wrote: |
hughson wrote: |
That says that the channel has failed to do a put to LQ_T24_OUT on QMgr: ESBMQ01STGCD1. And yet the gateway queue manager is in a cluster with queue manager ESBMQ01STGCD1 so it should know it. To test the queue name resolution, what happens if you run amqsput on the gateway queue manager thus:-
Code: |
amqsput LQ_T24_OUT GWYMQ01STGDC1 |
Cheers,
Morag |
Sent successfully to LQ_T24_OUT once to QMgr ESBMQ01STGCD1 and once to QMgr ESBMQ02STGCD1 |
I'm Sorry, I directed you to do the wrong thing. I meant to ask you to do this with amqsput.
Code: |
amqsput LQ_T24_OUT GWYMQ01STGDC1 8208 0 ESBMQ01STGCD1 |
The difference? This second one also fills in the queue manager name on the open which mimics what the channel is attempting. My earlier instruction didn't fill in the queue manager name on the open, and was not a true reflection of what the channel is doing. Please can you try this command. Again, sorry, hard to keep all the details in my head.
Cheers,
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
hisham.rakha |
Posted: Wed Jan 30, 2019 1:34 am Post subject: |
|
|
Apprentice
Joined: 13 Nov 2018 Posts: 39
|
hughson wrote: |
hisham.rakha wrote: |
hughson wrote: |
That says that the channel has failed to do a put to LQ_T24_OUT on QMgr: ESBMQ01STGCD1. And yet the gateway queue manager is in a cluster with queue manager ESBMQ01STGCD1 so it should know it. To test the queue name resolution, what happens if you run amqsput on the gateway queue manager thus:-
Code: |
amqsput LQ_T24_OUT GWYMQ01STGDC1 |
Cheers,
Morag |
Sent successfully to LQ_T24_OUT once to QMgr ESBMQ01STGCD1 and once to QMgr ESBMQ02STGCD1 |
I'm Sorry, I directed you to do the wrong thing. I meant to ask you to do this with amqsput.
Code: |
amqsput LQ_T24_OUT GWYMQ01STGDC1 8208 0 ESBMQ01STGCD1 |
The difference? This second one also fills in the queue manager name on the open which mimics what the channel is attempting. My earlier instruction didn't fill in the queue manager name on the open, and was not a true reflection of what the channel is doing. Please can you try this command. Again, sorry, hard to keep all the details in my head.
Cheers,
Morag |
I got the following output
Sample AMQSPUT0 start
target queue is LQ_T24_OUT
target queue manager is ESBMQ01STGCD1
open options are 8208
MQOPEN ended with reason code 2087
unable to open queue for output
Sample AMQSPUT0 end |
|
Back to top |
|
 |
hughson |
Posted: Wed Jan 30, 2019 1:45 am Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
hisham.rakha wrote: |
hughson wrote: |
I meant to ask you to do this with amqsput.
Code: |
amqsput LQ_T24_OUT GWYMQ01STGDC1 8208 0 ESBMQ01STGCD1 |
The difference? This second one also fills in the queue manager name on the open which mimics what the channel is attempting. My earlier instruction didn't fill in the queue manager name on the open, and was not a true reflection of what the channel is doing. Please can you try this command. Again, sorry, hard to keep all the details in my head.
Cheers,
Morag |
I got the following output
Sample AMQSPUT0 start
target queue is LQ_T24_OUT
target queue manager is ESBMQ01STGCD1
open options are 8208
MQOPEN ended with reason code 2087
unable to open queue for output
Sample AMQSPUT0 end |
OK good - that's exactly the same problem that the channel has. At least that is consistent.
So now, you need to discover why putting to a fully qualified queue on queue manager name, where the queue manager name is one known to GWYMQ01STGDC1 via the cluster, doesn't work.
Looking at the set of possible issues described in Knowledge Center for MQRC_UNKNOWN_REMOTE_Q_MGR (2087) I would like to ask you to issue the following command on the gateway queue manager GWYMQ01STGDC1 .
Code: |
DISPLAY QUEUE(ESBMQ01STGCD1) ALL |
Cheers,
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
hisham.rakha |
Posted: Wed Jan 30, 2019 1:55 am Post subject: |
|
|
Apprentice
Joined: 13 Nov 2018 Posts: 39
|
hughson wrote: |
hisham.rakha wrote: |
hughson wrote: |
I meant to ask you to do this with amqsput.
Code: |
amqsput LQ_T24_OUT GWYMQ01STGDC1 8208 0 ESBMQ01STGCD1 |
The difference? This second one also fills in the queue manager name on the open which mimics what the channel is attempting. My earlier instruction didn't fill in the queue manager name on the open, and was not a true reflection of what the channel is doing. Please can you try this command. Again, sorry, hard to keep all the details in my head.
Cheers,
Morag |
I got the following output
Sample AMQSPUT0 start
target queue is LQ_T24_OUT
target queue manager is ESBMQ01STGCD1
open options are 8208
MQOPEN ended with reason code 2087
unable to open queue for output
Sample AMQSPUT0 end |
OK good - that's exactly the same problem that the channel has. At least that is consistent.
So now, you need to discover why putting to a fully qualified queue on queue manager name, where the queue manager name is one known to GWYMQ01STGDC1 via the cluster, doesn't work.
Looking at the set of possible issues described in Knowledge Center for MQRC_UNKNOWN_REMOTE_Q_MGR (2087) I would like to ask you to issue the following command on the gateway queue manager GWYMQ01STGDC1 .
Code: |
DISPLAY QUEUE(ESBMQ01STGCD1) ALL |
Cheers,
Morag |
HYG
DISPLAY QUEUE(ESBMQ01STGCD1) ALL
1 : DISPLAY QUEUE(ESBMQ01STGCD1) ALL
AMQ8147: IBM MQ object ESBMQ01STGCD1 not found. |
|
Back to top |
|
 |
hughson |
Posted: Wed Jan 30, 2019 2:00 am Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
hisham.rakha wrote: |
hughson wrote: |
OK good - that's exactly the same problem that the channel has. At least that is consistent.
So now, you need to discover why putting to a fully qualified queue on queue manager name, where the queue manager name is one known to GWYMQ01STGDC1 via the cluster, doesn't work.
Looking at the set of possible issues described in Knowledge Center for MQRC_UNKNOWN_REMOTE_Q_MGR (2087) I would like to ask you to issue the following command on the gateway queue manager GWYMQ01STGDC1 .
Code: |
DISPLAY QUEUE(ESBMQ01STGCD1) ALL |
Cheers,
Morag |
HYG
DISPLAY QUEUE(ESBMQ01STGCD1) ALL
1 : DISPLAY QUEUE(ESBMQ01STGCD1) ALL
AMQ8147: IBM MQ object ESBMQ01STGCD1 not found. |
Ok, so no queue manager aliases getting in the way. And we know from my earlier mistake when I gave you the wrong amqsput command that you can address those queue managers in the cluster.
OK what does the following command show.
Code: |
DISPLAY CLUSQMGR(ESBMQ01STGCD1) ALL |
Cheers,
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
hisham.rakha |
Posted: Wed Jan 30, 2019 2:13 am Post subject: |
|
|
Apprentice
Joined: 13 Nov 2018 Posts: 39
|
hughson wrote: |
hisham.rakha wrote: |
hughson wrote: |
OK good - that's exactly the same problem that the channel has. At least that is consistent.
So now, you need to discover why putting to a fully qualified queue on queue manager name, where the queue manager name is one known to GWYMQ01STGDC1 via the cluster, doesn't work.
Looking at the set of possible issues described in Knowledge Center for MQRC_UNKNOWN_REMOTE_Q_MGR (2087) I would like to ask you to issue the following command on the gateway queue manager GWYMQ01STGDC1 .
Code: |
DISPLAY QUEUE(ESBMQ01STGCD1) ALL |
Cheers,
Morag |
HYG
DISPLAY QUEUE(ESBMQ01STGCD1) ALL
1 : DISPLAY QUEUE(ESBMQ01STGCD1) ALL
AMQ8147: IBM MQ object ESBMQ01STGCD1 not found. |
Ok, so no queue manager aliases getting in the way. And we know from my earlier mistake when I gave you the wrong amqsput command that you can address those queue managers in the cluster.
OK what does the following command show.
Code: |
DISPLAY CLUSQMGR(ESBMQ01STGCD1) ALL |
Cheers,
Morag |
I noticed that there was a typo for the provided command below as you typed ESBMQ01STGCD1 instead of ESBMQ01STGDC1 so after correcting the previous command below msg sent successfully to QMgr ESBMQ01STGDC1
amqsput LQ_T24_OUT GWYMQ01STGDC1 8208 0 ESBMQ01STGDC1 |
|
Back to top |
|
 |
hughson |
Posted: Wed Jan 30, 2019 2:24 am Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
hisham.rakha wrote: |
I noticed that there was a typo for the provided command below as you typed ESBMQ01STGCD1 instead of ESBMQ01STGDC1 so after correcting the previous command below msg sent successfully to QMgr ESBMQ01STGDC1
amqsput LQ_T24_OUT GWYMQ01STGDC1 8208 0 ESBMQ01STGDC1 |
The same typo exists in the command you were to run on QMD originally, and in the QREMOTE definitions on QMD. Please correct them all and see if it all now works.
Cheers,
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
hisham.rakha |
Posted: Wed Jan 30, 2019 2:29 am Post subject: |
|
|
Apprentice
Joined: 13 Nov 2018 Posts: 39
|
hughson wrote: |
hisham.rakha wrote: |
I noticed that there was a typo for the provided command below as you typed ESBMQ01STGCD1 instead of ESBMQ01STGDC1 so after correcting the previous command below msg sent successfully to QMgr ESBMQ01STGDC1
amqsput LQ_T24_OUT GWYMQ01STGDC1 8208 0 ESBMQ01STGDC1 |
The same typo exists in the command you were to run on QMD originally, and in the QREMOTE definitions on QMD. Please correct them all and see if it all now works.
Cheers,
Morag |
I corrected them all and after executing the below command from QMgr D msg successfully sent to ESBMQ01STGDC1
Code: |
amqsput LQ_T24_OUT T24STGDC1 8208 0 ESBMQ01STGDC1 |
|
|
Back to top |
|
 |
hughson |
Posted: Wed Jan 30, 2019 2:46 am Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
hisham.rakha wrote: |
I corrected them all and after executing the below command from QMgr D msg successfully sent to ESBMQ01STGDC1
Code: |
amqsput LQ_T24_OUT T24STGDC1 8208 0 ESBMQ01STGDC1 |
|
Great News! So you're all set now?
Cheers,
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
hisham.rakha |
Posted: Wed Jan 30, 2019 3:12 am Post subject: |
|
|
Apprentice
Joined: 13 Nov 2018 Posts: 39
|
hughson wrote: |
hisham.rakha wrote: |
I corrected them all and after executing the below command from QMgr D msg successfully sent to ESBMQ01STGDC1
Code: |
amqsput LQ_T24_OUT T24STGDC1 8208 0 ESBMQ01STGDC1 |
|
Great News! So you're all set now?
Cheers,
Morag |
Thanks for your help, much appreciated Hughson.
One more thing I'm confused from which I described before regarding to the TCServer configuration as there is MQQUEUE OUT:?? must be filled so Can I fill it with LQ_T24_OUT? |
|
Back to top |
|
 |
hughson |
Posted: Wed Jan 30, 2019 3:16 am Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
hisham.rakha wrote: |
One more thing I'm confused from which I described before regarding to the TCServer configuration as there is MQQUEUE OUT:?? must be filled so Can I fill it with LQ_T24_OUT? |
We don't know how your application works, so we cannot tell you what it will do with the configuration attribute MQQUEUE OUT. You need to talk to your application developer when he comes back and tell him the application needs to use MQMD.ReplyToQ and MQMD.ReplyToQmgr fields and not use MQQUEUE OUT. You may find that it already does, or you may find that the application needs to be changed in which case that configuration field may be retired.
Either way, there is no single queue name you can put in there that will result in the behaviour you have stated you want, that is, the reply goes back to the queue manager where the request came from.
Cheers,
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
hisham.rakha |
Posted: Wed Jan 30, 2019 3:36 am Post subject: |
|
|
Apprentice
Joined: 13 Nov 2018 Posts: 39
|
hughson wrote: |
hisham.rakha wrote: |
One more thing I'm confused from which I described before regarding to the TCServer configuration as there is MQQUEUE OUT:?? must be filled so Can I fill it with LQ_T24_OUT? |
We don't know how your application works, so we cannot tell you what it will do with the configuration attribute MQQUEUE OUT. You need to talk to your application developer when he comes back and tell him the application needs to use MQMD.ReplyToQ and MQMD.ReplyToQmgr fields and not use MQQUEUE OUT. You may find that it already does, or you may find that the application needs to be changed in which case that configuration field may be retired.
Either way, there is no single queue name you can put in there that will result in the behaviour you have stated you want, that is, the reply goes back to the queue manager where the request came from.
Cheers,
Morag |
Thanks, I got it.
Can I change the QR name "ESBMQ01STGDC1" and "ESBMQ02STGDC1" to anything else or it must remains as same as QMgr name
For example:
Code: |
DEFINE QREMOTE('LQ_OUT') RNAME(' ') RQMNAME('ESBMQ01STGDC') XMITQ('TQ_T24_IN') CLUSTER(' ') REPLACE ; |
Instead of
Code: |
DEFINE QREMOTE('ESBMQ01STGDC') RNAME(' ') RQMNAME('ESBMQ01STGDC') XMITQ('TQ_T24_IN') CLUSTER(' ') REPLACE ; |
|
|
Back to top |
|
 |
hughson |
Posted: Wed Jan 30, 2019 3:43 am Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
hisham.rakha wrote: |
Can I change the QR name "ESBMQ01STGDC1" and "ESBMQ02STGDC1" to anything else or it must remains as same as QMgr name
For example:
Code: |
DEFINE QREMOTE('LQ_OUT') RNAME(' ') RQMNAME('ESBMQ01STGDC') XMITQ('TQ_T24_IN') CLUSTER(' ') REPLACE ; |
Instead of
Code: |
DEFINE QREMOTE('ESBMQ01STGDC') RNAME(' ') RQMNAME('ESBMQ01STGDC') XMITQ('TQ_T24_IN') CLUSTER(' ') REPLACE ; |
|
In order to route messages put on QMD to those two queue managers, the names of the QREMOTE definitions must match the string used by the application in the MQOD.ObjectQMgrName field (which it will get from MQMD.ReplyToQMgr). So yes, they have to be the queue manager names. They are actually known as "Queue Manager Aliases" which is a little bit confusing as they are QREMOTE definitions not QALIAS definitions!! They have to be QREMOTE definitions so that there is somewhere to stick the XMITQ name.
Hope that helps.
Cheers,
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
|