I’ve written recently about how OPMODE is used in MQ V9.0 LTS and MQ V9.0 CD to control the functions that are available and the backwards compatibility of your queue manager. In this post I want to show how you can tell what OPMODE value is currently in effect for a running queue manager.
Didn’t I just set the OPMODE?
As you’ll know from reading my previous posts, you set the value of OPMODE using the OPMODE parameter of the CSQ6SYSP macro, before compiling the system parameter module (ZPARM). The value of OPMODE that the ZPARM was compiled with is displayed by the queue manager when it starts, as in this example.
However, this doesn’t necessarily tell you which functions are available on your queue manager and which version of MQ it could fall back to if necessary. These depend on various factors that the queue manager checks during startup, such as the OPMODE values of other queue managers in a queue sharing group.
Where can I find this information?
To see what level of functions are currently available, issue the DIPSLAY SYSTEM command. This command is also issued by the queue manager when it starts, and the output looks something like this.
You’ll notice that the value for OPMODE contains three elements – mode, compatibility level and function level. In the example above, the values for these are COMPAT, 903 and 710 respectively.
The first value indicates whether the queue manager is running in new function mode for the current release, or in compatibility mode. If functions restricted by OPMODE in the current release are available, NEWFUNC will be displayed, otherwise it will be COMPAT.
You may recall that there are no new functions in MQ V9.0 that are restricted by OPMODE, so this is the least useful of the three elements.
The second element shows the version of MQ that the queue manager can fall back to, should you need to revert to running the queue manager at an earlier version of MQ. This value increases either when the queue manager is migrated to a newer version of MQ, or when new functions restricted by OPMODE become available.
New function level
The third element shows the level of new functions restricted by OPMODE that are currently available. On a queue manager that is part of a queue sharing group, this value depends on the value of OPMODE set for all the other queue managers in the queue sharing group.
The example above should help illustrate this. The output is from a DISPLAY SYSTEM command run on a MQ V9.0.3 queue manager, which cannot fall back to a previous version (as backwards migration is not supported for Continuous Delivery releases). However, only functions restricted by OPMODE in MQ V7.1.0 or earlier are available, in this case because another queue manager in the same queue sharing group does not support newer functions.
If you need to know which functions are currently available on queue manager, always check the output from the DISPLAY SYSTEM command.