Author |
Message
|
kirank |
Posted: Tue Mar 06, 2007 10:53 am Post subject: Qmgr CCSID for Broker |
|
|
 Centurion
Joined: 10 Oct 2002 Posts: 136 Location: California
|
Hi,
We have a requirement to process Japanese characters from the message flow. We are using Pub/Sub architecture for processing messages. However when a Published message arrives on a subscription queue it has a code page of 819. I think this is because the queue manager for broker has ccsid of 819. This does not work for Japanese characters and message fails with parser error.
I know that if we change the queue manager CCSID to 1208 it works. I have couple of questions related to this issue
1. Is there any other solution to this problem instead of changing queue manager CCSID?
2. If we change the queue manager CCSID to 1208 will it have any impact on any message flows that have specific code to force CCSID to 819?
Regards
Kiran |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Mar 06, 2007 11:45 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
You should almost never have to change the CCSID of a queue manager.
You should, instead, make sure that your data is properly identified in the messages you send, and not rely on the qmgr CCSID. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
kirank |
Posted: Tue Mar 06, 2007 2:10 pm Post subject: |
|
|
 Centurion
Joined: 10 Oct 2002 Posts: 136 Location: California
|
In this case since its a published message I don't have a control over the MQMD. The broker is putting the code page based on the CCSID of the queue manager.
Regards
Kiran |
|
Back to top |
|
 |
fjb_saper |
Posted: Tue Mar 06, 2007 2:23 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
kirank wrote: |
In this case since its a published message I don't have a control over the MQMD. The broker is putting the code page based on the CCSID of the queue manager.
Regards
Kiran |
I beg to differ. Just make sure OutputRoot.Properties.CodedCharSetId is set correctly.... (and you may have to set it explicitly)
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
kirank |
Posted: Tue Mar 06, 2007 2:59 pm Post subject: |
|
|
 Centurion
Joined: 10 Oct 2002 Posts: 136 Location: California
|
I have tried setting CCSID in Properties as well as in MQRFH2 header to 1208. Still when the subscription message arrives on queue it shows the code page as 819 and the message fails.
We are at WBIMB 5.0 CSD3 level. Does that ring any bells? Anything other than applying CSD is acceptable solution at this point.
Regards
Kiran |
|
Back to top |
|
 |
fjb_saper |
Posted: Thu Mar 08, 2007 4:18 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
kirank wrote: |
I have tried setting CCSID in Properties as well as in MQRFH2 header to 1208. Still when the subscription message arrives on queue it shows the code page as 819 and the message fails.
We are at WBIMB 5.0 CSD3 level. Does that ring any bells? Anything other than applying CSD is acceptable solution at this point.
Regards
Kiran |
Don't know I use Version 6.
In one case to keep UTF-8 as the message content I had to explicitly code
Set OutputRoot.Properties.CodedCharSetId = InputRoot.Properties.CodedCharSetId;
Anything else was giving me an 819....
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
ydsk |
Posted: Thu Mar 08, 2007 7:15 pm Post subject: |
|
|
Chevalier
Joined: 23 May 2005 Posts: 410
|
Are you saying you can't change the publishing flow ?
Then, why can't you do a GET-with-Convert before processing the message in your subscription queue ? You can convert it to the code page you want just after GETting it from the subscription queue and then process it.
Let us know if it helps.
Curious to know ...
thnx.
ydsk. |
|
Back to top |
|
 |
kirank |
Posted: Fri Mar 09, 2007 9:52 am Post subject: |
|
|
 Centurion
Joined: 10 Oct 2002 Posts: 136 Location: California
|
Well it would have worked if the Broker was able to keep the special character data as it is. But when I see the message on a a subscription queue the data is already in messed up. It might possibly be a bug at WBIMB CSD3 level. We have opened a PMR with IBM. But that always take a long time so I was hoping to have it resolved faster.
I was thinking of changing the qmgr CCSID to 1208 which defintiely works when i tested it on windows. Does anyone see any other side effects of changing QMGR CCSID that I am not able to see?
Regards
Kiran |
|
Back to top |
|
 |
ydsk |
Posted: Fri Mar 09, 2007 12:32 pm Post subject: |
|
|
Chevalier
Joined: 23 May 2005 Posts: 410
|
you said you tried setting CCSID in properties and RFH2, but did you try setting it in MQMD ?? |
|
Back to top |
|
 |
ydsk |
Posted: Fri Mar 09, 2007 12:35 pm Post subject: |
|
|
Chevalier
Joined: 23 May 2005 Posts: 410
|
you may want to ask IBM if it is ok to change the CCSID of the broker qmgr, since you already raised a PMR with them.
I would say you have re-test all your existing flow that run on it to make sure they aren't messed up, especially the special characters.
What is stopping you from applying the latest CSD on it ?? I am sure IBM would first ask you to do the same thing.
thanks.
ydsk. |
|
Back to top |
|
 |
kirank |
Posted: Fri Mar 09, 2007 12:56 pm Post subject: |
|
|
 Centurion
Joined: 10 Oct 2002 Posts: 136 Location: California
|
We are schduled to go to version 6.0 in a few months time so don't want to put in a small CSD upgrade and associated testing in between.
Thanks
Kiran |
|
Back to top |
|
 |
|