The below error was thrown because when you use the .NET classes from CSD05,
you must upgrade the Framework to 1.1 (the docs are wrong).


Once we figured that out, it was determined that .NET straight out of CSD05
has (incorrectly) a 4 MEG limit on the Client channels. IBM sent me a fix,
which I will test out as soon as my VB.NET software comes in. (The client I
was helping gave up on CSD05 and .NET and went back to using the Support
Pack, because CSD05 also introduces PCF errors when used out of .NET, which
he needed).

The MQChannelDefenition Class listed at the start of Chapter 4 is not
available for use (it is private, an omission in the doc).







-----Original Message-----
From: Potkay, Peter M (PLC, IT) [mailto:[EMAIL PROTECTED]
Sent: Thursday, November 13, 2003 1:07 PM
To: [EMAIL PROTECTED]
Subject: Re: VB.NET clients limited to 4 MEG?


Since upgrading to CSD05, the application now just flat out does not work.
The below error is thrown when attempting to connect to the QM:

'DefaultDomain': Loaded
'c:\windows\microsoft.net\framework\v1.0.3705\mscorlib.dll', No symbols
loaded.
'mqtest': Loaded 'D:\Development\mqtest\mqtest\bin\mqtest.exe', Symbols
loaded.
'mqtest.exe': Loaded
'c:\windows\assembly\gac\system\1.0.3300.0__b77a5c561934e089\system.dll', No
symbols loaded.
'mqtest.exe': Loaded
'c:\windows\assembly\gac\microsoft.visualbasic\7.0.3300.0__b03f5f7f11d50a3a\
microsoft.visualbasic.dll', No symbols loaded.
'mqtest.exe': Loaded
'c:\windows\assembly\gac\amqmdnet\1.0.0.3__dd3cb1c9aae9ec97\amqmdnet.dll',
No symbols loaded.
An unhandled exception of type 'System.IO.FileNotFoundException' occurred in
amqmdnet.dll

Additional information: File or assembly name System.EnterpriseServices, or
one of its dependencies, was not found.




-----Original Message-----
From: Potkay, Peter M (PLC, IT) [mailto:[EMAIL PROTECTED]
Sent: Thursday, November 13, 2003 12:35 PM
To: [EMAIL PROTECTED]
Subject: Re: VB.NET clients limited to 4 MEG?


I upgraded the developer to CSD05, but still no luck.

I looked in the Java MQ manual and found a class called MQChannelDefinition.
This class has a variable called maxMessageLength.

maxMessageLength
public int maxMessageLength
The maximum length of message that can be sent to the queue manager.


I assume this is a variable that can be set in Java.

So, since the .NET classes are very similar to the Java classes, I looked in
the .NET manual for it. The only mention of this class is on the first page
of Chapter 4 of the .NET manual. It only says the class is available, but
gives no mention of its supported variables.

But the class is just not there when you try and access it in the code.

I have opened up a ticket with IBM.



-----Original Message-----
From: Potkay, Peter M (PLC, IT) [mailto:[EMAIL PROTECTED]
Sent: Wednesday, November 12, 2003 3:09 PM
To: [EMAIL PROTECTED]
Subject: VB.NET clients limited to 4 MEG?


I have a client at 5.3 CSD04 with the .NET support pack (Next we week we
will upgrade him to CSD05 and the supported classes).

Anyway, it seems we can't get a message larger then 4 MEG thru.

The QM, the SVRCONN channel and the queue are all at 104857600 for Max
Message Length.

It keeps throwing a 2010 Error (MQRC_DATA_LENGTH_ERROR). From the Error
manual, this means:
The DataLength parameter is not valid. Either the parameter pointer is not
valid, or it points
to read-only storage. (It is not always possible to detect parameter
pointers that are not valid;
if not detected, unpredictable results occur.)
This reason can also be returned to an MQ client program on the MQGET,
MQPUT, or
MQPUT1 call, if the BufferLength parameter exceeds the maximum message size
that was
negotiated for the client channel.
Corrective action: Correct the parameter.
If the error occurs for a WebSphere MQ client program, also check that the
maximum message
size for the channel is big enough to accommodate the message being sent; if
it is not big
enough, increase the maximum message size for the channel.


The app returns some info that shows the MaxMessageLength is 4194304. Since
this info in the display is between the IPROCS count and the current depth,
we assume it means the queue.

So, I made the MAX on the queue 12345, and the SVRCONN channel 3000000. Now
the app returns that the max is 12345.

Next, I made the MAX on the queue 4000000, and the SVRCONN channel was left
at 3000000. Now the app returns that the max is 3000000!

Finally I made both the queue and the SVRCONN channel 5000000, and the app
retuned the MAX as 4194304.

MQSERVER variable is not set. The app is building the MQEnvironment class.



Why the artificial limit at 4 MEG?




Peter Potkay
MQSeries Specialist
The Hartford Financial Services
[EMAIL PROTECTED]
x77906
IBM MQSeries Certified




This communication, including attachments, is for the exclusive use of
addressee and may contain proprietary, confidential or privileged
information. If you are not the intended recipient, any use, copying,
disclosure, dissemination or distribution is strictly prohibited. If
you are not the intended recipient, please notify the sender
immediately by return email and delete this communication and destroy all
copies.

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive

Reply via email to