Author |
Message
|
jsena |
Posted: Fri Aug 10, 2007 5:48 am Post subject: Edit Client Channel Table for large messages |
|
|
Newbie
Joined: 23 Feb 2007 Posts: 5
|
Hello,
I am extremely new to this so I apologize if the following is unclear. I have some very large messages (e.g. 25-50MB) that I need to get onto and off of my mq queue. I’ve increased the maxmsgl to the 104857600 in every manager, queue and channel I can find including system.auto.svrconn, system.def.clntconn, and system.def.svrconn. After doing so I am able to put a large message onto the queue, but when I try to get the message off the queue I get a 2010 error, apparently it’s because I’ve set my mqbuffersize to 104857600 and that’s bigger than the max length set in the channels. Only problem is that as far as I can see the max length in the channels is also 104857600. I’ve read that this is probably because I’m editing those parameters in the mqserver instead of the client channel table. I don’t know what either of those are. I just know I log onto my AS400 and type “go cmdmqm” and then I get the option to start working with the queues. I’ve done a lot of searching and every article I’ve found is written to an audience that knows something about mqseries, which is a problem for me. How do I find the client channel table, or is that were I am when I type “go cmdmqm”? Once I do find it, how do I edit it? Sorry for posting such a basic question but I’ve run out of time to learn it on my own.
Thank you very much for any help,
jordan |
|
Back to top |
|
 |
EddieA |
Posted: Fri Aug 10, 2007 10:45 am Post subject: |
|
|
 Jedi
Joined: 28 Jun 2001 Posts: 2453 Location: Los Angeles
|
If you are able to PUT the message, but not GET, I'm assuming that it's a "local" application that does the PUT.
How are you defining the Client connection, and what language is the Client application.
There is a restriction, if you are using the MQSERVER environment variable, that the maximum message size supported is 4K.
Cheers, _________________ Eddie Atherton
IBM Certified Solution Developer - WebSphere Message Broker V6.1
IBM Certified Solution Developer - WebSphere Message Broker V7.0 |
|
Back to top |
|
 |
jsena |
Posted: Fri Aug 10, 2007 10:58 am Post subject: |
|
|
Newbie
Joined: 23 Feb 2007 Posts: 5
|
Local - Yes, I run a vb app which puts the message out there. The last statement of the vb app calls a .bat file which is suppose to do the GET part.
I know your going to shake your head but...how do I find out what language the Client application is in? |
|
Back to top |
|
 |
jefflowrey |
Posted: Fri Aug 10, 2007 12:16 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
jsena wrote: |
how do I find out what language the Client application is in? |
The "Client application" is the thing that's supposed to do the Get.
In your case, it would be whatever is invoked by that .bat file.
If that thing is using the MQSERVER environment variable, it probably won't be able to do this. It will need to use a client connection table, or be re-written to use MQCONNX (or equivalent) to allow it specify the MaxMsgLn itself.
Eddie's point about "local" is that - if the queue is not a qlocal to the qmgr that the client app is connecting to, you won't ever be able to get a message. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
jsena |
Posted: Thu Aug 16, 2007 6:03 am Post subject: |
|
|
Newbie
Joined: 23 Feb 2007 Posts: 5
|
I sent that message to the people who wrote the client app and the .bat file and they said:
We do not do anything special during client connection other than loading MQ client libs. Also, the connection to the server uses MQCONN MQI call and MQGET for the message, so in the setup if MQSERVER or MQCONNX table is used, should not matter as long as one of them exists in right way. Did you try creating the table to increase the max size in channel connection and disable MQSERVER to run this scenario?
Are they right? How do I do what they said?
thanks,
jordan |
|
Back to top |
|
 |
Vitor |
Posted: Thu Aug 16, 2007 6:24 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
jsena wrote: |
Are they right? How do I do what they said? |
They are quite right. The MQSERVER method (as indicated by my estemed fellow posters) will not be able to achieve this.
You'll need to create a client connection table with the relevant details and an increased message size, as described by the Clients manual. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Aug 16, 2007 6:50 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
If the code they have written uses MQCONN, and not MQCONNX...
Then you will need to set the environment variables that tell the code where to find the client table, and not set MQSERVER.
As described in the Clients Manual. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
|