Usha
provided that your application has built the
segments using the same rules as MQ segments the message, you should _not_ have
to read each segment individually. An MQGET with options including
mqgmo_all_msgs_available should cause the qmgr to reassemble your message and
present it to your app as a single message.
MQGMO_COMPLETE_MSG is supported from Java client,
provided the qmgr you are connecting to supports it.
The first thing I would check would be that your
three segments all have the same GroupId (they need to have), but apart from
that you need to check the MQMDE fields carefully.
Regards
Darren.
----- Original Message -----
Sent: Wednesday, October 15, 2003 8:07
PM
Subject: Re: MQ Series Segmentation
Hi
Arun,
Thanks
for the info, are you saying that i *have* to loop through till i get all the
segments ?? I was under an impression that issuing one MQGET should reassemble
all the segments and give me one single final message..
-
Usha
At 10:05 AM 10/15/2003 -0700, you wrote:
HI Usha I have used segmentation but only in Server to Server to
scenario. MQPUT PMO
MQPMO_LOGICAL_ORDER MD MQMF_SEGMENT (all 3 segments) MQMF_LAST_SEGMENT
(last segment ) MQGET 1. Instead of GMO
MQGMO_COMPLETE_MSG I have used following options GMO
MQGMO_LOGICAL_ORDER + MQGMO_ALL_SEGMENTS_AVAILABLE + MQGMO_WAIT; 2.
MD No options set: In this case if You have to re-set msg-id and correl
id , when you loop through all the segments in the queue to receive
all the segments. messageId =
MQMI_NONE; correlationId =
MQCI_NONE; This worked for me in Server to Server case. try
it with client-server and let us know how it works. Arun Makhija Never argue with an idiot. They drag you down to their
level and beat you with experience
- -----Original Message-----
- From: Usha Suryadevara [mailto:[EMAIL PROTECTED]]
- Sent: Wednesday, October 15, 2003 8:57 AM
- To: [EMAIL PROTECTED]
- Subject: MQ Series Segmentation
Greetings,
Have anyone used MQ segmentation ?
Is it possible to activate MQ segmentation in a client server
scenario ? I mean between MQ client and MQ server.
This is what i am doing, say i have 3 segments,
MQPUT
PMO MQPMO_LOGICAL_ORDER
MD MQMF_SEGMENT (all 3 segments)
MQMF_LAST_SEGMENT (last segment )
MQGET
GMO MQGMO_COMPLETE_MSG
MD No options set
Also the Version number for MQMD to MQMD_VERSION_2.
Now when i put a message it segments it right, but when i do a MQGET
it gets only the first segment, not the whole message. :(.
The documentation i was reading says that "QM upon receiving the
segments reassembles it when an MQGET is issued.. ". Does this mean that
the segments cannot be re-assembled if the receiving application is an
MQ client ?
There is a work around that i can keep checking the for the
mdDescriptor.MsgFlags
= MQMF_LAST_SEGMENT
i
think... didn't try this yet but might work.
Any information is appreciated.
Thanks in advance
Usha
|