Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

maximum message length usage on local queue

Status
Not open for further replies.

sundrop

Technical User
Aug 20, 2001
1
US
Is it necessary to set the maximum message length of a local queue to the size of the message being put on the queue? What happens if I leave the default size (e.g. 4MB)? Will I be using unnecessary resources?
 
Hi sundrop,

I just can speak of z/OS, where we recently had problems, as a queue, used by about 900 workstations per client channel, had been set to 4MB.
The CHIN-adress-space was filled up until its margin of 2 GB virtual storage, then it rejected all further connections.

HTH
 
I do not believe that the Max Msg Length attribute of a queue has any bearing on the amount of space taken up, with the obvious exception being that bigger messages take up more disk space.

If you absolutely need to ensure that disk space is not filled you would need to balance the max msg length and max depth parameters accordingly.

Remember that prior to MQ 5.3 each queue has a maximum size of 2GB anyway.

That z/OS problem sounds odd - were all 900 workstations putting to the same queue? I would expect your page set to fill - not virtual storage.

Cheers,
Paul
 
Paul,

I was not speaking of disk storage but of main storage.

The CHIN reserves a buffer in the range of the biggest messagelength used by the connection.
Therefore it results the same, if all users open the same queue or maybe everyone has ist own dynamic queue.

Regards,

Norbert
 
Norbert,

Ok - I see what you mean. But how does it know what the messagelength is, in order to allocate a buffer of this size? I presume you are talking about client connections to the CHIN. Are you saying that each MQOPEN for Input results in the CHIN allocating a buffer equal to the max msg length of the queue?

I have never used clients on the mainframe but this design seems extremely limited - you would only need a few connections, with each opening several queues for input to blow out you CHIN virtual storage! And without the ability to run multiple CHINs, your only alternative is to run multiple QMgrs!!

Can this be correct?
 
Hi Paul,

you're right, this is the upper limit - 2 GB virtual storage.

The MSTR adress space tells the CHIN the maxmsglen when a queue is opened, and the CHIN increases the connection buffer, if it's too low for a new open (we still talk about one connection - one buffer) .


Regards,

Norbert
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top