[Windows][z/OS][V9.0.2 Mar 2017][Linux]

What's changed in IBM MQ 9.0.2

Changes to functions and resources in IBM® MQ 9.0.2, including any deprecations, are described in this section. Review these changes before upgrading queue managers to the latest product version and decide whether you must plan to make changes to existing applications, scripts, and procedures before starting to migrate your systems.

For additional information about system requirements for IBM MQ 9.0, see the System Requirements for IBM MQ 9.0 web page. You can use the Software Product Compatibility Reports (SPCR) tool to find information on supported operating systems, system requirements, prerequisites, and optional supported software. The web page includes more information about the SPCR tool and links to reports for each supported platform.

Changes to the administrative REST API /qmgr status attribute and query attribute

At IBM MQ 9.0.1, the administrative REST API /qmgr object returned a JSON response with an attribute called status. The value of this attribute indicated the running state of the queue manager. From IBM MQ 9.0.2, this attribute is called state. For example, in IBM MQ 9.0.1 the JSON response includes "status" : "running". From IBM MQ 9.0.2 it includes "state" : "running".

Similarly, at IBM MQ 9.0.1 the administrative REST API /qmgr object included an optional query parameter called status that filtered the results returned based on the running state of the queue manager. From IBM MQ 9.0.2, this query parameter is called state.

For more information, see /qmgr GET.

Changes to the administrative REST API security

At IBM MQ 9.0.1, security was not available for the administrative REST API. From IBM MQ 9.0.2, security is enabled for the administrative REST API. If you used the administrative REST API feature in IBM MQ 9.0.1, and the appSecurity-2.0 feature is enabled in the mqwebuser.xml file, at IBM MQ 9.0.2, the administrative REST API rejects your request with an HTTP status code of 401. To use the administrative REST API in IBM MQ 9.0.2, if security is enabled you must either use token based authentication, or HTTP basic authentication with each REST request. However, if security is not enabled, you do not need to use either approach. For more information, see IBM MQ Console and REST API security.

The administrative REST API enabled by default

At IBM MQ 9.0.1, the administrative REST API was disabled by default. From IBM MQ 9.0.2, the administrative REST API is enabled by default. [V9.0.1 Nov 2016]For more information about enabling or disabling the administrative REST API, see Configuring autostart.

IBM MQ resource adapter IVT application updated to support WildFly V10

From IBM MQ 9.0.2, the IBM MQ 9.0 resource adapter installation verification test application has been updated so that the WMQ_IVT_MDB.jar file contains the file META-INF\jboss-ejb3.xml, which is used by WildFly V10. The file WEB-INF\jboss-web.xml within the WMQ_IVT.war file contains the correct resource references for WildFly V10.

For more information, see Installing and testing the resource adapter in Wildfly.

New constant JMS_IBM_SUBSCRIPTION_USER_DATA added to the JmsConstants interface

From IBM MQ 9.0.2, the IBM MQ classes for JMS are updated so that when a message is consumed from a queue that contains an RFH2 header with the MQPS folder, the value associated with the Sud key, if it exists, is added as a String property to the JMS Message object returned to the IBM MQ classes for JMS application. To enable an application to retrieve this property from the message, a new constant, JMS_IBM_SUBSCRIPTION_USER_DATA, is added to the JmsConstants interface. This new property can be used with the method javax.jms.Message.getStringProperty(java.lang.String) to retrieve the subscription user data. For more information, see Retrieval of user subscription data.

Proxy subscriptions are not modified to ADMIN when alterations are attempted

Subscriptions with a SUBTYPE of PROXY cannot be modified. From IBM MQ 9.0.2, if an attempt is made to modify a proxy subscription, an error message is reported and the SUBTYPE is not modified to ADMIN. See DISPLAY SUB and ALTER SUB.

Improved naming for subscriptions created by the IBM MQ Explorer MFT plugin

At IBM MQ 9.0.1, the name of the subscription created on the coordination queue manager by the IBM MQ Explorer MFT plug-in is prefixed with the host name of the system running the associated instance of IBM MQ Explorer. From IBM MQ 9.0.2, the prefix is changed to show that the subscription was created by the IBM MQ Explorer MFT plug-in and the name of the user. For more information, see Ensuring that Managed File Transfer log messages are retained.

Improved information about the MFT agent when the last reported status is UNKNOWN

At IBM MQ 9.0.2 a new value, Status Age, is displayed for agents that are connecting to the coordination manager. The Status Age is output when you run fteListAgents and fteShowAgentDetails commands in the command line. The Status Age column can be seen in IBM MQ Explorer for agents that are listed against a coordination manager and in the individual properties for each agent. For more information, see What to do if an agent is shown as being in an UNKNOWN state.

New messagePublicationFormat property for Managed File Transfer installation.properties file

From IBM MQ 9.0.2, a new property, messagePublicationFormat, is added to the installation.properties file. This property allows you to specify the message publication format used by MFT agents for their status XML messages. For more information, see The installation.properties file.

There is a coding error in IBM MQ 9.0.2. In this version, when you specify messagePublicationFormat=mixed, the effect is the same as specifying messagePublicationFormat=MQFMT_NONE. This error is fixed in IBM MQ 9.0.3.

[z/OS]

New agent property adminGroup for use with MFT agents on z/OS

IBM MQ 9.0.2 adds a new agent property adminGroup for use with Managed File Transfer agents on z/OS®. This property defines the name of group of users who can:
  • Start the agent by using the fteStartAgent command.
  • Stop the agent by using the fteStopAgent command.
  • Enable or disable trace for the agent by using the fteSetAgentTraceLevel command.
  • Display agent details by using the fteShowAgentDetails command.
For more information, see The agent.properties file.

Change to logger checkpointing

From IBM MQ 9.0.2, the logger schedules checkpoints more frequently (so the next one is scheduled before the previous one has completed) because the logger is attempting to keep the active log in the primary log extents.

Change to the dmpmqlog command

The dmpmqlog command outputs a timestamp with each log record. The following text show an example of a timestamp:

LOG RECORD - LSN <0:0:4615:42406>
**********

HLG Header: lrecsize 212, version 1, rmid 0, eyecatcher HLRH
Creation Time: 2017-01-30 13:50:31.146 GMT Standard Time (UTC +0)
[Linux]

mqconfig change for nproc

On Linux®, each thread is implemented as a light-weight process (LWP) and each LWP is counted as one process against the resource limit nproc. Therefore nproc needs to be set based on the number of threads.

From IBM MQ 9.0.2, the mqconfig script has been modified to display the number of processes based on number of threads running instead of the number of processes.

For more information about mqconfig and nproc, see Configuring and tuning the operating system on Linux and mqconfig.

Deprecation: RPM support for Ubuntu

RPM support for Ubuntu is deprecated from IBM MQ 9.0.2. IBM intends to remove RPM support for Ubuntu in the next Long Term Support version of IBM MQ, and for versions of Ubuntu later than 16.04.