|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
Preserving MessageID in Pub-sub |
« View previous topic :: View next topic » |
Author |
Message
|
hughson |
Posted: Thu Dec 06, 2018 1:38 pm Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
vicks_mq wrote: |
Just wondering if IBM has implemented Message ID preservation in higher version.
we have an application putting request message and we want to send the reply to 2 reply queues using the TOPIC subscription.
Our application copy the message and put it in correlation ID and reply back,
so while Subscriber will put message to both destination, will the correlation ID will remain the same? |
IBM has not implemented Message ID preservation in any version that I have seen.
Your scenario sounds different to others though. It sounds like the request message is not the message that is published? It sounds like the message being published is the reply, and so it is the correlation ID of the reply message that you need to preserve, and not a message ID? If so this is possible with pub/Sub. Read IBM MQ Little Gem #31: Publisher's CorrelId
Cheers,
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
vicks_mq |
Posted: Thu Dec 06, 2018 2:27 pm Post subject: |
|
|
Disciple
Joined: 03 Oct 2017 Posts: 162
|
hughson wrote: |
vicks_mq wrote: |
Just wondering if IBM has implemented Message ID preservation in higher version.
we have an application putting request message and we want to send the reply to 2 reply queues using the TOPIC subscription.
Our application copy the message and put it in correlation ID and reply back,
so while Subscriber will put message to both destination, will the correlation ID will remain the same? |
IBM has not implemented Message ID preservation in any version that I have seen.
Your scenario sounds different to others though. It sounds like the request message is not the message that is published? It sounds like the message being published is the reply, and so it is the correlation ID of the reply message that you need to preserve, and not a message ID? If so this is possible with pub/Sub. Read IBM MQ Little Gem #31: Publisher's CorrelId
Cheers,
Morag |
Hi Morag,
Yes, you understood it right. we need to preserve Reply correlation ID.
our sending application differentiates each request reply by MsgID-correlationID.
I will go through the article
Hi Mograg, coming back, does Topic-Subscriber retain the correlation ID?
Last edited by vicks_mq on Fri Dec 07, 2018 12:12 pm; edited 1 time in total |
|
Back to top |
|
 |
vicks_mq |
Posted: Thu Dec 06, 2018 2:36 pm Post subject: |
|
|
Disciple
Joined: 03 Oct 2017 Posts: 162
|
hughson wrote: |
vicks_mq wrote: |
Just wondering if IBM has implemented Message ID preservation in higher version.
we have an application putting request message and we want to send the reply to 2 reply queues using the TOPIC subscription.
Our application copy the message and put it in correlation ID and reply back,
so while Subscriber will put message to both destination, will the correlation ID will remain the same? |
IBM has not implemented Message ID preservation in any version that I have seen.
Your scenario sounds different to others though. It sounds like the request message is not the message that is published? It sounds like the message being published is the reply, and so it is the correlation ID of the reply message that you need to preserve, and not a message ID? If so this is possible with pub/Sub. Read IBM MQ Little Gem #31: Publisher's CorrelId
Cheers,
Morag |
ON a separate issue on Z/OS, we created the following topic subscribe
define topic(NYC_MAINFRAME_REP_TOPIC) topicstr('TOPICSHG')
define sub(NYC_MAINFRAME_REP_SUB_ABAF) topicstr('TOPICSHG') dest(CNN.NYC_MAINFRAME_REP)
define sub(NYC_MAINFRAME_REP_SUB_ABBANK) topicstr('TOPICSHG') dest(CNN.TMGMT.QALIAS.MAINDATA.REP)
alter qalias(NYC_MAINFRAME_REP) target(NYC_MAINFRAME_REP_TOPIC) targtype(topic)
both the Destinations of Topic subscribe is "Remote Q", we have had success in reaching to both Destination by doing it manually but when our application sent reply, it didn't went to the second destination(Which is new destination) ... could it be missing at subscriber permission.
Last edited by vicks_mq on Fri Dec 07, 2018 3:56 am; edited 1 time in total |
|
Back to top |
|
 |
bruce2359 |
Posted: Thu Dec 06, 2018 4:36 pm Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
vicks_mq wrote: |
... but when our application sent reply, it didn't went to the second destination(Which is new destination) ... could it be missing at subscriber permission. |
It doesn't help much to tell us where it didn't go. Where did it go? To the DLQ? If so, what does the DLH tell you? _________________ 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 |
|
 |
hughson |
Posted: Thu Dec 06, 2018 7:58 pm Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
vicks_mq wrote: |
ON a separate issue on Z/OS, we created the following topic subscribe
define topic(NYC_MAINFRAME_REP_TOPIC) topicstr('TOPICSHG')
define sub(NYC_MAINFRAME_REP_SUB_TDAF) topicstr('TOPICSHG') dest(CNN.NYC_MAINFRAME_REP)
define sub(NYC_MAINFRAME_REP_SUB_TDBANK) topicstr('TOPICSHG') dest(CNN.TMGMT.QALIAS.MAINDATA.REP)
alter qalias(NYC_MAINFRAME_REP) target(NYC_MAINFRAME_REP_TOPIC) targtype(topic)
both the Destinations of Topic subscribe is "Remote Q" |
Could you show us the DEFINE QREMOTE definitions for them as well please?
vicks_mq wrote: |
we have had success in reaching to both Destination by doing it manually |
Could you elaborate what you mean by "Manually"? Are you putting a message to the alias queue or to the QRemotes?
vicks_mq wrote: |
but when our application sent reply, it didn't went to the second destination(Which is new destination) ... could it be missing at subscriber permission. |
Could you also show us the output from the following command after you run your test.
Code: |
DISPLAY SBSTATUS(NYC_MAINFRAME_REP_SUB_TD*) ALL |
This will show the number of messages each subscription has been sent. You need to determine whether the problem is between topic and subscription, or between local qmgr and remote queue manager (e.g. on XmitQ and Channel).
Cheers,
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
vicks_mq |
Posted: Fri Dec 07, 2018 3:55 am Post subject: |
|
|
Disciple
Joined: 03 Oct 2017 Posts: 162
|
hughson wrote: |
vicks_mq wrote: |
ON a separate issue on Z/OS, we created the following topic subscribe
define topic(NYC_MAINFRAME_REP_TOPIC) topicstr('TOPICSHG')
define sub(NYC_MAINFRAME_REP_SUB_ABAF) topicstr('TOPICSHG') dest(CNN.NYC_MAINFRAME_REP)
define sub(NYC_MAINFRAME_REP_SUB_ABBANK) topicstr('TOPICSHG') dest(CNN.TMGMT.QALIAS.MAINDATA.REP)
alter qalias(NYC_MAINFRAME_REP) target(NYC_MAINFRAME_REP_TOPIC) targtype(topic)
both the Destinations of Topic subscribe is "Remote Q" |
Could you show us the DEFINE QREMOTE definitions for them as well please?
I compared the remote Q definition and except XMITQ, RMQGR, REMOTEQ there is no other differences in other properties. although the permission is given on XMITQ, but i would visit it again.
vicks_mq wrote: |
we have had success in reaching to both Destination by doing it manually |
Could you elaborate what you mean by "Manually"? Are you putting a message to the alias queue or to the QRemotes?
Yes putting the message to Alias q, which is pointing to TOPIC
vicks_mq wrote: |
but when our application sent reply, it didn't went to the second destination(Which is new destination) ... could it be missing at subscriber permission. |
Could you also show us the output from the following command after you run your test.
Code: |
DISPLAY SBSTATUS(NYC_MAINFRAME_REP_SUB_AB*) ALL |
This will show the number of messages each subscription has been sent. You need to determine whether the problem is between topic and subscription, or between local qmgr and remote queue manager (e.g. on XmitQ and Channel).
Both the subscription has 3 messages so it looks like problem is not with subscription.
Cheers,
Morag |
|
|
Back to top |
|
 |
vicks_mq |
Posted: Fri Dec 07, 2018 10:10 am Post subject: |
|
|
Disciple
Joined: 03 Oct 2017 Posts: 162
|
We figured out the problem was with the second Dest Q authority, thanks all. |
|
Back to top |
|
 |
bruce2359 |
Posted: Fri Dec 07, 2018 10:27 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
vicks_mq wrote: |
We figured out the problem was with the second Dest Q authority, thanks all. |
What exactly? _________________ 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 |
|
 |
vicks_mq |
Posted: Fri Dec 07, 2018 12:11 pm Post subject: |
|
|
Disciple
Joined: 03 Oct 2017 Posts: 162
|
bruce2359 wrote: |
vicks_mq wrote: |
We figured out the problem was with the second Dest Q authority, thanks all. |
What exactly? |
Application was using a different user ID to reply than we thought and one of the destination has the permission and other don't. |
|
Back to top |
|
 |
vicks_mq |
Posted: Fri Dec 07, 2018 12:13 pm Post subject: |
|
|
Disciple
Joined: 03 Oct 2017 Posts: 162
|
vicks_mq wrote: |
hughson wrote: |
vicks_mq wrote: |
Just wondering if IBM has implemented Message ID preservation in higher version.
we have an application putting request message and we want to send the reply to 2 reply queues using the TOPIC subscription.
Our application copy the message and put it in correlation ID and reply back,
so while Subscriber will put message to both destination, will the correlation ID will remain the same? |
IBM has not implemented Message ID preservation in any version that I have seen.
Your scenario sounds different to others though. It sounds like the request message is not the message that is published? It sounds like the message being published is the reply, and so it is the correlation ID of the reply message that you need to preserve, and not a message ID? If so this is possible with pub/Sub. Read IBM MQ Little Gem #31: Publisher's CorrelId
Cheers,
Morag |
Hi Morag,
Yes, you understood it right. we need to preserve Reply correlation ID.
our sending application differentiates each request reply by MsgID-correlationID.
I will go through the article
|
Hi Mograg, coming back, does Topic-Subscriber retain the correlation ID?
Suppose our sending application has message ID - 414d5120454149505247573120202020713ffa5be909f520 and I know the responding application copy this message ID to corrrelation ID and from topic to multiple subscribers, does this correlation IDs is retained? |
|
Back to top |
|
 |
hughson |
Posted: Fri Dec 07, 2018 12:58 pm Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
vicks_mq wrote: |
vicks_mq wrote: |
hughson wrote: |
vicks_mq wrote: |
Just wondering if IBM has implemented Message ID preservation in higher version.
we have an application putting request message and we want to send the reply to 2 reply queues using the TOPIC subscription.
Our application copy the message and put it in correlation ID and reply back,
so while Subscriber will put message to both destination, will the correlation ID will remain the same? |
IBM has not implemented Message ID preservation in any version that I have seen.
Your scenario sounds different to others though. It sounds like the request message is not the message that is published? It sounds like the message being published is the reply, and so it is the correlation ID of the reply message that you need to preserve, and not a message ID? If so this is possible with pub/Sub. Read IBM MQ Little Gem #31: Publisher's CorrelId
Cheers,
Morag |
Hi Morag,
Yes, you understood it right. we need to preserve Reply correlation ID.
our sending application differentiates each request reply by MsgID-correlationID.
I will go through the article
|
Hi Mograg, coming back, does Topic-Subscriber retain the correlation ID?
Suppose our sending application has message ID - 414d5120454149505247573120202020713ffa5be909f520 and I know the responding application copy this message ID to corrrelation ID and from topic to multiple subscribers, does this correlation IDs is retained? |
As described in the article linked above, the publishers correlation ID is preserved IFF the subscriber is made accordingly.
You have told us that your subscriptions are made like this:-
Code: |
define sub(NYC_MAINFRAME_REP_SUB_ABAF) topicstr('TOPICSHG') dest(CNN.NYC_MAINFRAME_REP) |
A subscription made like this will not preserve the publisher's correlation ID.
If, as described in the article, you were to make your subscription like this:-
Code: |
define sub(NYC_MAINFRAME_REP_SUB_ABAF) topicstr('TOPICSHG') dest(CNN.NYC_MAINFRAME_REP) DESTCORL(0) |
then the publisher's correlation ID would be preserved.
Cheers,
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
|
|
|
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
|
|
|
|