IBM Websphere MQ Series amsputc
Posted on 2007-07-25
Normally MQ protocol can handle files of size up to about 30K, no problem. I'm trying to send a less-than-5K file to a vendor's IBM Websphere server using MQ 5.3 (NOT 6.x). I'm using a modified version of the IBM MQ sample program amqsputc. It was originally written to send 100 bytes, and when one tries to send more, it crashes. By my request, a C programmer changed the memory allocation in the code from 100 bytes to 10,000 and now the program no longer crashes. But, it breaks the file into multiple MQ messages, size 99 bytes each. The vendor tells me she receives all the data, but she needs it as one MQ message, not broken up into dozens.
Yet, there are no more size-related references in the source code. The C programmer and I are guessing there's a configuration setting somewhere that's chopping things into 99-byte packages. The code is simple: it connects, opens the channel, puts the data, and closes the channel.
Wed like to get this based-on-IBM-code program to work rather than researching how to re-write the entire thing from the ground up, for many reasons. We especially don't want to hear, after spending the client's money on a re-write, that we're idiots and all we needed to do was tweak one configuration setting and everything would have worked. So, we're first looking for what to tweak.
This is running on a Windows 2000/2003 environment and I emphasize that if your advice pertains to MQ version 6 then I can't use it. It HAS to be 5.3 since the vendor insists.