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 » General IBM MQ Support » Receiving IBytesMessages via .NET interface - error 2010

Post new topic  Reply to topic Goto page Previous  1, 2
 Receiving IBytesMessages via .NET interface - error 2010 « View previous topic :: View next topic » 
Author Message
fishlips
PostPosted: Fri Mar 02, 2012 5:23 am    Post subject: Reply with quote

Apprentice

Joined: 21 Dec 2011
Posts: 36

fishlips wrote:
could it be perhaps:

Code:

- WMQ_MSG_BATCH_SIZE
- WMQ_MAX_BUFFER_SIZE


Any ideas? Maybe I'll just try setting them to 52,428,800 ?


This didn't work.



Last edited by fishlips on Fri Mar 02, 2012 5:27 am; edited 1 time in total
Back to top
View user's profile Send private message
mqjeff
PostPosted: Fri Mar 02, 2012 5:24 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Vitor wrote:
fishlips wrote:
Are there changes I need to make to the code, in order to read messages with the "MQHRF2" format?


Yes, or if you're using WMQv7 you need to cater for them; v7 introduced message properties which replaced the MQRFH2 header. Much discussion on this in the forum.


But also to be clear, you're not using the .NET api, you're using XMS (which is no longer a supportpac and now built into the product).

And XMS should handle the RFH2/properties without change to your code.
Back to top
View user's profile Send private message
fishlips
PostPosted: Fri Mar 02, 2012 5:30 am    Post subject: Reply with quote

Apprentice

Joined: 21 Dec 2011
Posts: 36

Vitor wrote:
you're using XMS (which is no longer a supportpac and now built into the product).

And XMS should handle the RFH2/properties without change to your code.


Quite right, thanks for clarifying that - good point.

So, let me phrase this as clearly as I can - How, using the XMS API for .NET, can I alter my connection factory to accept larger messages?
Back to top
View user's profile Send private message
fishlips
PostPosted: Fri Mar 02, 2012 5:46 am    Post subject: Reply with quote

Apprentice

Joined: 21 Dec 2011
Posts: 36

Ok, a little more progress. I downloaded the first message on the live queue. It's 4.27MB.

This was too big to upload onto my "test" queue, so I had to increase the max message size on the queue. I did this. I then uploaded the file I'd downloaded from the live queue onto the "test" queue.

My code now fails with the same message, which means the fault is probably within my code - as you say - I need to alter a setting somewhere to permit the downloading of larger DATAGRAM messages.

Any ideas how I do this?
Back to top
View user's profile Send private message
mqjeff
PostPosted: Fri Mar 02, 2012 5:46 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

fishlips wrote:
So, let me phrase this as clearly as I can - How, using the XMS API for .NET, can I alter my connection factory to accept larger messages?


In a quick review of the docs for XMS, it seems the most straight forward way is to remove the settings you have for hostname, channel, and port, and set XMSC_WMQ_QUEUE_MANAGER and XMSC_WMQ_CCDTURL.

The CCDTURL points to the client channel table your MQ admin will create, and the WMQ_QUEUE_MANAGER holds the name that matches the QMNAME on the correct channel in the CCDT.
Back to top
View user's profile Send private message
fishlips
PostPosted: Fri Mar 02, 2012 5:52 am    Post subject: Reply with quote

Apprentice

Joined: 21 Dec 2011
Posts: 36

There appears to be a channel in the Channels list, called CLIENT.[QUEUE MANAGER NAME], is this the client channel?

If so, do you know how the API will expect the "XMSC_WMQ_CCDTURL" to look?

The fact that it ends in URL makes it sound as though it will be expecting a specific format? In the same was as the queue name (destination URI) had to specified in the format of "queue:///[queue name]"

Any ideas on format?
Back to top
View user's profile Send private message
mqjeff
PostPosted: Fri Mar 02, 2012 5:56 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

It's a pointer to a file.

So it will be something like "file://root/folder/filename".

If you do a google search for CCDTURL, you should find lots of examples and discussion on using this property with JMS. It's the same property with the same meaning in XMS.

Again, this is a pointer to a file that your MQ admin will create and provide to you. You don't appear to be the MQ admin, you appear to be a developer. If there is *anyone* in the role of MQ Admin at your shop or customer, you should go talk to them in person ASAP about using client channel tables.
Back to top
View user's profile Send private message
fishlips
PostPosted: Mon Mar 05, 2012 2:11 am    Post subject: Reply with quote

Apprentice

Joined: 21 Dec 2011
Posts: 36

fishlips wrote:
Vitor wrote:
you're using XMS (which is no longer a supportpac and now built into the product).

And XMS should handle the RFH2/properties without change to your code.


Quite right, thanks for clarifying that - good point.

So, let me phrase this as clearly as I can - How, using the XMS API for .NET, can I alter my connection factory to accept larger messages?


Ok, well I've had a good scan through the list of available properties for the ConnectionFactory object, and I'm sure as I can be that there isn't a property I can set to alter the maximuum message size.
Back to top
View user's profile Send private message
fishlips
PostPosted: Mon Mar 05, 2012 2:27 am    Post subject: Reply with quote

Apprentice

Joined: 21 Dec 2011
Posts: 36

fishlips wrote:

Ok, well I've had a good scan through the list of available properties for the ConnectionFactory object, and I'm sure as I can be that there isn't a property I can set to alter the maximuum message size.


In fact, I can't see a setting in the entire XMS Definition that can alter the MAXMSG size on any object. Any ideas?
Back to top
View user's profile Send private message
mqjeff
PostPosted: Mon Mar 05, 2012 2:48 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

fishlips wrote:
fishlips wrote:

Ok, well I've had a good scan through the list of available properties for the ConnectionFactory object, and I'm sure as I can be that there isn't a property I can set to alter the maximuum message size.


In fact, I can't see a setting in the entire XMS Definition that can alter the MAXMSG size on any object. Any ideas?


Yes.

You need to construct a client channel definition table, with the assistance of your MQ administrator.

You then need to put this file in a known location on the box running the XMS code.

You then need to construct a file:// url that points to this CCDT file and set this value into the aforementioned CCDTURL property of the connection factory.

The maxmsgln will be set on the client channel definition inside the CCDT file.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Goto page Previous  1, 2 Page 2 of 2

MQSeries.net Forum Index » General IBM MQ Support » Receiving IBytesMessages via .NET interface - error 2010
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.