Author |
Message
|
TonyD |
Posted: Mon Jun 18, 2007 8:31 pm Post subject: MQRC2010 for .Net Client messages >4Meg |
|
|
Knight
Joined: 15 May 2001 Posts: 540 Location: New Zealand
|
We are getting this error when putting to a queue. The queue max msg length is 100Mb as is the SvrConn channel max length.
The .Net client app is explicitly specifying the queue manager connection parameters (QM, SvrConn channel, port). The MQ Client is 6.0.2 (current Supportpac level).
I have confirmed the channel and queue are OK by using rfhutilc to put a 6.5Mb message, connecting the same way as the .Net client.
We have set SEGMENTATION_ALLOWED but it makes no difference.
I have read through the various threads on this subject. It appears that there was/is a message length restriction in .Net, but it was (?) fixed in a V5 fixpack. Also there have been some suggestions that client connections should be used.
Does anyone know if there is still a .Net msg length restriction and if so, what is the recommended way to get around it? |
|
Back to top |
|
 |
fjb_saper |
Posted: Tue Jun 19, 2007 2:35 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
See the previous thread.
You need to use either MQCONNX and specify the max msg length or use a channel table with the channel pair configured for over 4MB.
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
TonyD |
Posted: Tue Jun 19, 2007 4:36 pm Post subject: |
|
|
Knight
Joined: 15 May 2001 Posts: 540 Location: New Zealand
|
Thanks for reply.
We are not having any luck with using the Channel Definition table. The .Net app(Version 2 framework) does not seem to be picking up the environment variables, both when specified as settings and as standard environment variables.
Could you give a bief example of using MQCONNX? We have read through the 'Using .Net' manual but it is not clear how we invoke MQCONNX and specify MQChannel.MaxMessageLength. |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Jun 19, 2007 6:43 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Okay.
Two things to try.
1) Set NMQ_MQ_LIB to 'mqic32.dll'. DO NOT set Hostname, Channel Name, or port. Set the MQ client channel table environment variables (I do not know why I can never remember what they are named... )
If that doesn't work,
2) Set MQEnvironment.Channel or etc. to point to a MQChannelDefinition object instead of a string. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
sebastia |
Posted: Wed Jun 20, 2007 1:53 am Post subject: |
|
|
 Grand Master
Joined: 07 Oct 2004 Posts: 1003
|
TonyD wrote: |
Could you give a bief example of using MQCONNX? We have read through the 'Using .Net' manual but it is not clear how we invoke MQCONNX and specify MQChannel.MaxMessageLength. |
Look in the code samples ... AMQSCNXC.C i quite nice !
22,396 amqscnxc.c - how to specify client connection information on MQCONNX. |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Jun 20, 2007 2:00 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
But that's a C sample, not a .NET sample... so not entirely relevant. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
TonyD |
Posted: Wed Jun 20, 2007 1:13 pm Post subject: |
|
|
Knight
Joined: 15 May 2001 Posts: 540 Location: New Zealand
|
Footnote to this thread ... we resolved the Client Connection problem (MQCHLLIB/MQCHLTAB) that we had. It turned out that the path in MQCHLLIB was too big (either too many levels or too long). Once we put the table in a folder with a shorter path everything worked fine! |
|
Back to top |
|
 |
|