PROPCTL channel options

Use PROPCTL channel attribute to control which message properties are included in a message that is sent from a Version 8.0 queue manager to a partner queue manager from an earlier version of IBM® MQ.

Table 1. Channel message property attribute settings
PROPCTL Description
ALL

Use this option if applications connected to the partner queue manager from an earlier version are able to process any properties placed in a message by a Version 8.0 application.

All properties are sent to the partner queue manager, in addition to any name/value pairs placed in the MQRFH2.

You must consider two application design issues:
  1. An application connected to the partner queue manager must be able to process messages containing MQRFH2 headers generated on a Version 8.0 queue manager.
  2. The application connected to the partner queue manager must process new message properties that are flagged with MQPD_SUPPORT_REQUIRED correctly.

With the ALL channel option set, JMS applications can interoperate between IBM MQ Version 8.0 and an earlier version using the channel. New Version 8.0 applications using message properties can interoperate with applications from an earlier version, depending on how the earlier version application handles MQRFH2 headers.

COMPAT

Use this option to send message properties to applications connected to an earlier version partner queue manager in some cases, but not all. Message properties are only sent if two conditions are met:

  1. No property must be marked as requiring message property processing.
  2. At least one of the message properties must be in a reserved folder; see Note.

With the COMPAT channel option set, JMS applications can interoperate between IBM MQ Version 8.0 and an earlier version using the channel.

The channel is not available to every application using message properties, only to those applications that use the reserved folders. The rules concerning whether the message or the property is sent are:

  1. If the message has properties, but none of the properties are associated with a reserved folder, then no message properties are sent.
  2. If any message property has been created in a reserved property folder, all message properties associated with the message are sent. However:
    1. If any of the message properties are marked as support being required, MQPD_SUPPORT_REQUIRED or MQPD_SUPPORT_REQUIRED_IF_LOCAL, the whole message is rejected. It is returned, discarded, or sent to the dead letter queue according to the value of its report options.
    2. If no message properties are marked as support being required, an individual property might not be sent. If any of the message property descriptor fields are set to non-default values the individual property is not sent. The message is still sent. An example of a non-default property descriptor field value is MQPD_USER_CONTEXT.
Note: The reserved folders names start with mcd., jms., usr., or mqext.. These folders are created for applications that use the JMS interface. In Version 8.0 any name/value pairs that are placed in these folders are treated as message properties.

Message properties are sent in an MQRFH2 header, in addition to any name/value pairs placed in an MQRFH2 header. Any name/value pairs placed in an MQRFH2 header are sent as long as the message is not rejected.

NONE

Use this option to prevent any message properties being sent to applications connected to an earlier version partner queue manager. An MQRFH2 that contains name/value pairs and message properties is still sent, but only with the name/value pairs.

With the NONE channel option set, a JMS message is sent as a JMSTextMessage or a JMSBytesMessage without any JMS message properties. If it is possible for an earlier version application to ignore all properties set in a Version 8.0 application, it can interoperate with it.