Page 1 of 1

Buffer container issue in Async Message Consumption in CICS

PostPosted: Fri Dec 07, 2018 9:41 am
by pranav283
While working on the Asynchronous Consumption of Messages in CICS, I found out this issue while putting messages to a queue (from which MQ passes the data to callback consumer routine in the form of channels and container over the default channel - MQ_ASYNC_CONSUME.

I noticed in my callback consumer module - that as soon as its GETs the container 'Buffer' - it is supposed to get the refreshed copy. But, if the 'now' data area is changed to something not-spaces/blanks, then it gets a refreshed copy.
But, when that data area is changed to blanks/spaces, then it doesn't refreshes that particular area. However, in the same LUW -it does gets the refreshed copy of other fields if I change them to non-blanks characters.

Eg: first PUT to MQ:
status-type - Processed
status-reason-desc - 0080

Buffer container has the same value for these two fields.


But, now in second try, I supply these values while putting to the queue:
status-type - Rejected
status-reason-desc - <blanks>.
In this case, it does takes the new value of status-type supplied to the queue, but it doesn't takes the new <blank> value of status-reason-desc field. That is, the value of status-reason-desc is still '0080' which ideally should have been <blanks>.

Does anybody has any idea on such a behaviour. Does it have to do anything with GMO fields?