ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Decoding issue with Trademark in MQ String

Post new topic  Reply to topic
 Decoding issue with Trademark in MQ String « View previous topic :: View next topic » 
Author Message
sprasad
PostPosted: Mon Feb 06, 2012 1:45 pm    Post subject: Decoding issue with Trademark in MQ String Reply with quote

Novice

Joined: 15 Dec 2011
Posts: 24

Hi,

I am having an issue with decoding Trademark symbol in MQ 7.0.1.5.

Scenario:
We have recently migrated MQ environment from 6.1.0.0 to 7.0.1.5. And same applications are used to send data to the backend system TERADATA. When we send a request to TERADATA, it will pick a coupon from the database based on the request and sends the response. While sending the response it will also attach coupon data and that data has a Trademark. We did a TEST sending the exact same message through both the environment and found that the Trademark(Special Character) is decoding differently in both the environments.

In V6 is it decoding as (HEXA) EF BF BD and in V7 it is decoding as (HEXA) 1A. Not sure why.

We have Message Broker picking the request message from MQ Queue and insert into database and Message broker gets the messages by a 'SELECT' statement and deliver it to MQ. Please find the difference in the environment below:

Old Environment:

$ dspmqver
Name: WebSphere MQ
Version: 6.0.2.5
CMVC level: p600-205-080922
BuildType: IKAP - (Production)

Message Broker : V 6

$ oslevel
5.3.0.0

$ locale
LANG=en_US
LC_COLLATE="en_US"
LC_CTYPE="en_US"
LC_MONETARY="en_US"
LC_NUMERIC="en_US"
LC_TIME="en_US"
LC_MESSAGES="en_US"
LC_ALL=


New Environment:(Which is having the problem)

$ dspmqver
Name: WebSphere MQ
Version: 7.0.1.5
CMVC level: p701-105-110419
BuildType: IKAP - (Production)

Message Broker: V 7

$ oslevel
6.1.0.0

$ locale
LANG=C
LC_COLLATE="C"
LC_CTYPE="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_MESSAGES="C"
LC_ALL=

Thanks in advance,
Prasad
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Mon Feb 06, 2012 1:59 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

Check the CCSID on the message and the CCSID on the qmgr.
You will find that there is a difference somewhere.
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
sprasad
PostPosted: Mon Feb 06, 2012 2:09 pm    Post subject: Reply with quote

Novice

Joined: 15 Dec 2011
Posts: 24

fjb_saper wrote:
Check the CCSID on the message and the CCSID on the qmgr.
You will find that there is a difference somewhere.


Thanks for the reply Saper. Here is the information:

Qmgr:

dis qmgr
1 : dis qmgr
AMQ8408: Display Queue Manager details.
QMNAME(UAQ6) ACCTCONO(DISABLED)
ACCTINT(1800) ACCTMQI(OFF)
ACCTQ(OFF) ACTIVREC(MSG)
ALTDATE(2011-07-27) ALTTIME(11.11.5
AUTHOREV(DISABLED) CCSID(819)

Message:
MQGET of message number 1
****Message descriptor****

StrucId : 'MD ' Version : 2
Report : 0 MsgType : 8
Expiry : -1 Feedback : 0
Encoding : 273 CodedCharSetId : 819

Thanks,
Prasad
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Mon Feb 06, 2012 2:18 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

The value 1A looks suspiciously like a placeholder value for a char that is not available in the current CCSID...
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
rekarm01
PostPosted: Mon Feb 06, 2012 6:53 pm    Post subject: Re: Decoding issue with Trademark in MQ String Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 1415

The applications don't seem to be handling the character for TRADE MARK SIGN correctly for either of the V6 or V7 environments:

sprasad wrote:
In V6 is it decoding as (HEXA) EF BF BD

This looks like UTF-8 encoding for the Unicode REPLACEMENT CHARACTER (U+FFFD, '�') ... "used to replace an incoming character whose value is unknown or unrepresentable in Unicode".

sprasad wrote:
... in V7 it is decoding as (HEXA) 1A.

And this looks like the ASCII SUBSTITUTE character, which serves a similar purpose.

The first step is to identify where the TRADE MARK SIGN does appear correctly (database? wmb? wmq?); the next step is to narrow down where it gets lost.

sprasad wrote:
Code:
1 : dis qmgr
AMQ8408: Display Queue Manager details.
QMNAME(UAQ6) ... CCSID(819)

Code:
MQGET of message number 1
****Message descriptor****
... Encoding : 273 CodedCharSetId : 819

Which environment is this for? And how does it differ from the other environment?

ccsid 819 doesn't support the TRADE MARK SIGN. If there weren't already a different issue before this point, there definitely would be one here.
Back to top
View user's profile Send private message
sprasad
PostPosted: Tue Feb 07, 2012 6:51 am    Post subject: Re: Decoding issue with Trademark in MQ String Reply with quote

Novice

Joined: 15 Dec 2011
Posts: 24

Thanks for the response rekarm01.

rekarm01 wrote:
The applications don't seem to be handling the character for TRADE MARK SIGN correctly for either of the V6 or V7 environments:

sprasad wrote:
In V6 is it decoding as (HEXA) EF BF BD

This looks like UTF-8 encoding for the Unicode REPLACEMENT CHARACTER (U+FFFD, '�') ... "used to replace an incoming character whose value is unknown or unrepresentable in Unicode".

sprasad wrote:
... in V7 it is decoding as (HEXA) 1A.

And this looks like the ASCII SUBSTITUTE character, which serves a similar purpose.

The first step is to identify where the TRADE MARK SIGN does appear correctly (database? wmb? wmq?); the next step is to narrow down where it gets lost.
Database. We are able to see the Trademark (Circled R) in the database. The first step after database is MB, then MQ.

sprasad wrote:
Code:
1 : dis qmgr
AMQ8408: Display Queue Manager details.
QMNAME(UAQ6) ... CCSID(819)

Code:
MQGET of message number 1
****Message descriptor****
... Encoding : 273 CodedCharSetId : 819

Which environment is this for? And how does it differ from the other environment?
This information is for MQ Version 7. The difference between the environments are OSLevels, MQ version and Message Broker Version.

ccsid 819 doesn't support the TRADE MARK SIGN. If there weren't already a different issue before this point, there definitely would be one here.

Where can I check if CCSID 819 does support Trademark or not. Do we have a table to represent that?
We were having the trademark in old environment and it was working fine. Only when we are using the same message in new environment, we are having issues.
Back to top
View user's profile Send private message
sprasad
PostPosted: Tue Feb 07, 2012 6:55 am    Post subject: Reply with quote

Novice

Joined: 15 Dec 2011
Posts: 24

fjb_saper wrote:
The value 1A looks suspiciously like a placeholder value for a char that is not available in the current CCSID... :innocent:


Thanks for the reply.

1A is hexa representation of 28. And the receiving application doesn't understand Hexa values less than 30. So we are having issues.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Tue Feb 07, 2012 6:55 am    Post subject: Re: Decoding issue with Trademark in MQ String Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

sprasad wrote:
We were having the trademark in old environment and it was working fine. Only when we are using the same message in new environment, we are having issues.


This is why we are asking you to compare the CCSID on the OLD system to the CCSID on the NEW system.

Yes, the internet should easily be able to provide you with a list of characters and their corrresponding byte values in codepage 819.
Back to top
View user's profile Send private message
Vitor
PostPosted: Tue Feb 07, 2012 6:59 am    Post subject: Re: Decoding issue with Trademark in MQ String Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

sprasad wrote:
Where can I check if CCSID 819 does support Trademark or not. Do we have a table to represent that?


Ask Mr Google - the Internet is full of them.

sprasad wrote:
We were having the trademark in old environment and it was working fine. Only when we are using the same message in new environment, we are having issues.


Note that what you posted was the amqsbcg showing the CCSID of the message; you were asked about the CCSID of the queue managers.

Note also some tools overload ASCII symbols to display graphics (like the trademark).
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
sprasad
PostPosted: Tue Feb 07, 2012 7:00 am    Post subject: Re: Decoding issue with Trademark in MQ String Reply with quote

Novice

Joined: 15 Dec 2011
Posts: 24

mqjeff wrote:
sprasad wrote:
We were having the trademark in old environment and it was working fine. Only when we are using the same message in new environment, we are having issues.


This is why we are asking you to compare the CCSID on the OLD system to the CCSID on the NEW system.

I did check the CCSID of old and new qmgrs and they are 819.

Yes, the internet should easily be able to provide you with a list of characters and their corrresponding byte values in codepage 819.


Sure will search and get the list of characters supported by CCSID 819. But as I told you we are having issues only with V7 but not with V6. They both have the same CCSID 819.
Back to top
View user's profile Send private message
Vitor
PostPosted: Tue Feb 07, 2012 7:07 am    Post subject: Re: Decoding issue with Trademark in MQ String Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

sprasad wrote:
They both have the same CCSID 819.


You have not demontrated this. Nor have you demonstrated that both environments traverse the same route & perform the same conversions.

As evidenced by the number of posts on this form regarding CCSID it's a tricky subject. You need to identify the point in the processing at which the byte value changes to a placeholder. Do not rely on being able to see it or not.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Decoding issue with Trademark in MQ String
Jump to:  



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
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.