In our project we are using Websphere MQAPI to connect to queue manager ,put message, get message, to check for message availablity and also to disable trigger. We came across a scenario where the current depth was >0(i.e Message is present in the queue) but we were getting 2033 when we tried to get the message. We initially thought they might be a uncommitted messages but we found that they are all committed. We tried to nail down to the reason and were able to find a reason it was actually that we have an inbuilt logic in the code that segments the message if it is beyond a specified length and for the last segment we used to set the flag as 'Last Segment' and even when the message doesnt need to be segmented we were setting the 'Last Segment' Flag to it. But even with this we were able to get messages from the queue in UNIX and Windows but we faced the issue in LINUX environment, and so we thoought that may be setting the 'Last Segment' flag for every message even though segmentation is not required caused this issue. So we thought to set the 'Last Segment' flag only to the Last segment of those messages which we were segmenting and not to every message and it worked fine in LINUX . Please tell if similar issue has been faced by anyone or confirm that why this would have happened.
With Best Regards,