Undocumented FastTransferOrder Parameter

T.Rob Wyatt was looking for information on the undocumented parameter called FastTransferOrder on the MQ ListServer. The original link to the information was broken. Angel Rivera of IBM has posted a new link with the relevent information here.

I’m going to post the contents of the new link here, just in case the IBM link becomes broken again.

Here is Morag Hughson’s response to a question posted on IBM Support Form about getter applications receiving an equal number of messages:

The default behaviour of the queue manager is to deliver messages to MQGET-waiters in a LIFO manner. It is more efficient for MQ to keep one thread/process ‘hot’ than to maximise context switching and deliver equal numbers of messages across the waiters.

In a real world set up it is not generally necessary to change this as work gets processed in the most efficient way and MQGET-waiters come and go and messages arrive on the queue in an unpredictable schedule. It is often seen when users are testing on a small scale and can see that the distribution is not round robin as they expected it would be.

If it truly is required to give up efficiency in order to have a more even distribution then it can be changed using the FastTransferOrder tuning parameter.

IBM’s Answer:

1) Even message distribution when getting messages
If multiple applications get messages from the same queue, then the messages will be evenly distributed between the get applications, if FIFO message delivery is enabled on the queue manager.
Procedure:
* Add the following tuning parameter to the queue manager’s qm.ini file:

TuningParameters:
   FastTransferOrder=FIFO

* Restart the queue manager

Possible values are: FastTransferOrder=[FIFO|LIFO]
Note that the default order is: LIFO
Where:
FIFO = First In First Out
LIFO = Last In First Out

2) APAR IZ85974 – Implement the FastTransferOrder property.
IZ85974: IN WMQ V7.0 FASTTRANSFERORDER PARAMETER IS NOT WORKING AS EXPECTED WHEN ASYNCHRONOUS CONSUME IS BEING USED.
Fixed in: MQ Fix Pack 7.0.1.5 (queue manager)

The FastTransferOrder tuning parameter allows the queue manager to deliver messages in a more round-robin manner by servicing waiting MQGETs in FIFO order rather than the default LIFO order.

Add the following tuning parameter to the queue manager’s qm.ini file:

TuningParameters:
   FastTransferOrder=FIFO

Restart the queue manager.

Note: The FastTransferOrder parameter is used to define which getter application will receive the next incoming message and NOT how the order of messages will be handled.

Regards,
Roger Lacroix
Capitalware Inc.

This entry was posted in IBM i (OS/400), IBM MQ, IBM MQ Appliance, Linux, Raspberry Pi, Unix, Windows.

Comments are closed.