Author |
Message
|
Roadie |
Posted: Tue Jun 28, 2011 8:46 am Post subject: Data Conversion issue after Upgrade to MQ 7015 from MQ6029 |
|
|
Newbie
Joined: 21 Aug 2006 Posts: 8
|
WAS Unix-based application reported problem with getting unintelligible app payload data after getting a reply message from a local queue. Reply message is generated by a mainframe-based app via IMS bridge and the data arrived on the REPLY queue in EBCDIC format (verified with q utility pgm). Encoding is 785, CCSID is 500. WAS application has been retrieving these msgs "without conversion" turned on as they do conversion internally in the app itself. So, they have been retrieving the raw EBCDIC data. Also, Channels do not have conversion turned on either. The unexpected behavior seems to have begun occuring after a recent upgrade to MQ v7.0.1.5 from MQ 6.0.2.9. Apps claim not have made any changes in this regard. MQ trace shows that MQGMO Options have the MQGMO_CONVERT turned OFF (i.e. is set to zero). The MQGMO options are x'02000700'.
Has there been a change in behavior for data conversion between MQ V6 and MQ V7 in this regard?
Any help is appreciated. |
|
Back to top |
|
 |
mqjeff |
Posted: Tue Jun 28, 2011 8:52 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
There's been a couple of changes in terms of how conversion is handled for JMS applications in between v6 and v7 and in v7.0.1.5.
In v6, the conversion was entirely handled in the JMS provider, using Java libraries.
In v7 this was switched to use the qmgr conversion routines to make it a bit more standard.
In v7.0.1.5 (I believe) this was switched back to using the Java libraries - with some settings.
So I'd review the list of new features/apars in 7.0.1.5 and find the one that discusses this and look for technotes. |
|
Back to top |
|
 |
zpat |
Posted: Tue Jun 28, 2011 9:55 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
Do you want the messages to arrive on the queue in CCSID 500? If not - what/when did you expect to convert them?
Do you want the MQGET to use MQGMO_CONVERT or not?
Do they get any strange MQRC, or exceptions on MQI calls?
Does WAS connect to the mainframe QM, or to it's own Unix QM (what sort of unix), or use SIB?
What has been upgraded? Mainframe QM, Unix QM, WAS MQ client?
What version of WAS are you using?
It's not clear from your post, where conversion was occuring originally. |
|
Back to top |
|
 |
Roadie |
Posted: Tue Jun 28, 2011 11:25 am Post subject: |
|
|
Newbie
Joined: 21 Aug 2006 Posts: 8
|
Do you want the messages to arrive on the queue in CCSID 500? If not - what/when did you expect to convert them?
A: The msgs are arriving on destination reply queue in EBCDIC format CCSID 500) which is what the consuming app wants to occur.
Do you want the MQGET to use MQGMO_CONVERT or not?
A: No.
Do they get any strange MQRC, or exceptions on MQI calls?
A: No.
Does WAS connect to the mainframe QM, or to it's own Unix QM (what sort of unix), or use SIB?
A: WAS app connects to a separate UNIX-based QMgr.
What has been upgraded? Mainframe QM, Unix QM, WAS MQ client?
A: Both mainframe QMgr and Unix QMgr. WAS MQ client has not been upgraded.
What version of WAS are you using?
A: WAS 7.0.0.13
It's not clear from your post, where conversion was occuring originally.
A: I can see on the UNIX-based QMgr where WAS app is connected that app payload data is in EBCDIC format. I can see in the MQ trace that QMgr is converting data to ASCII, even though the GET Msg Options did not request conversion.
Just learned that if application bypasses their internal data translation code, they can successfully process the ASCII data being passed to them by the QMgr. We are currently using this workaround so they can continue testing efforts. However, need to know why QMgr is converting data form EBCDIC to ASCII when not requested to do so.
Thanks for any info you can offer. |
|
Back to top |
|
 |
mqjeff |
Posted: Tue Jun 28, 2011 11:27 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Roadie wrote: |
A: Both mainframe QMgr and Unix QMgr. WAS MQ client has not been upgraded. |
Fix that.
And then review what I've said again. |
|
Back to top |
|
 |
zpat |
Posted: Tue Jun 28, 2011 11:38 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
The embedded MQ client comes with WAS, so you would't upgrade it separately. The MQ client version shipped with WAS 7.0.0.13 is version 7.0.1.3
OK, so you don't want conversion (usually people want it).
Is this a JMS based application, or base Java? Do they code the MQGET or is it performed on their behalf by JMS?
I would hazard a guess that it may be the JMS behaviour has changed and it is doing JVM based conversion, not MQGET based.
The code could inspect the MQMD.CCSID and see what value it is - conceivably it could be UTF-8 (1200), Ebcdic or Ascii, and act accordingly. This does not answer the question, but it does protect the application against all possibilities. |
|
Back to top |
|
 |
mqjeff |
Posted: Tue Jun 28, 2011 11:41 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
zpat wrote: |
I would hazard a guess that it may be the JMS behaviour has changed and it is doing JVM based conversion, not MQGET based. |
Yes.
It has changed.
Twice.
I have said that already. |
|
Back to top |
|
 |
zpat |
Posted: Tue Jun 28, 2011 11:42 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
NB this:
Quote: |
Receiving RFH2 Headers in WebSphere MQ classes for Java
In WebSphere MQ Version 6.0 a WebSphere MQ message formatted as a JMS message, read using MQGET, has MQRFH2 headers.
In WebSphere MQ Version 7.0, using all defaults, the same message does not include MQRFH2 headers. It consists solely of the message payload. The MQRFH2 folders inserted by the JMS client are converted into message properties.
To preserve the WebSphere MQ Version 6.0 behavior of propagating the MQRFH2 to the caller, the queue attribute PROPCTL must be set to its default value, COMPAT.
|
and also see the bit about conversion here
http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp?topic=/com.ibm.mq.csqzao.doc/mi11380_.htm |
|
Back to top |
|
 |
zpat |
Posted: Tue Jun 28, 2011 11:44 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
mqjeff wrote: |
Yes.
It has changed.
Twice.
I have said that already. |
Yes, but you are referring to how conversion is done, rather than whether it is done. |
|
Back to top |
|
 |
mqjeff |
Posted: Tue Jun 28, 2011 11:46 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
|
Back to top |
|
 |
brianb |
Posted: Thu Aug 04, 2011 8:20 pm Post subject: |
|
|
Voyager
Joined: 12 May 2010 Posts: 85
|
Hi
Fixpack 7.0.16 may have what you are looking for |
|
Back to top |
|
 |
|