Reverting a queue manager to a previous version on z/OS
After migrating to IBM® MQ for z/OS® 10.0.0 LTS or IBM MQ for z/OS 10.0.0 CD, from either IBM MQ for z/OS 9.4.0 or IBM MQ for z/OS 9.3.0, you can backward migrate, or fallback, to the version you were using prior to migration, using the BACKMIG option on the START QMGR command. Backwards migration is not supported for a CD release such as IBM MQ for z/OS 9.3.5.
Before you begin
Certain function available in IBM MQ for z/OS 10.0 can affect the ability to backwards migrate. These functions are not enabled by default, but if you have enabled these functions, you need to disable them prior to performing backwards migration.
You should not exploit new IBM MQ for z/OS 10.0 functions, until you are sure that you will not need to perform backwards migration.
Migrating back to IBM MQ for z/OS 9.4.0
Before performing backwards migration the following changes might be needed.
Any channels that have been adjusted to have a CONNAME longer than 48 characters must be changed to use a CONNAME less than or equal to 48 characters. If the CONNAME is not changed, then backwards migration of the channel results in the CONNAME being replaced with blank characters, and the message CSQY046I (see Initialization procedure and general services messages (CSQY...)) is issued. Before using the channel, the CONNAME needs to be updated to a suitable value, for example an IP address or a shorter hostname.
If IgnoreSeqNumberMismatch (see The QMINI data set) has been set in the QMINI data set, then the channels stanza needs to be removed from the data set.
The OTELTRAC and OTELPCTL parameters no longer apply and, for private and copy object definitions and the queue manager object, the new options are deleted at the point of backwards migration. Any shared queues with OTELPCTL(AUTO) defined should be changed back to OTELPCTL(QMGR) to prevent inconsistencies in behavior across the queue sharing group.
If the value of OUTBUFF (see Using CSQ6LOGP) has been increased beyond 4000, it should be changed back to 4000 and the system parameters recompiled.
Migrating back to IBM MQ for z/OS 9.3.0
Information described in the preceding Migrating back to IBM MQ for z/OS 9.4.0 section applies.
When migrating back to IBM MQ for z/OS 9.3.0, the first-class CAPEXPRY attribute no longer applies to any object definitions, and is deleted at the point of backwards migration. If you want to maintain these CAPEXPRY values, identify any objects with the first-class CAPEXPRY attribute set, and revert to using the CUSTOM attribute before migrating.
MY.QUEUE has a
CAPEXPRY value of
5000:ALTER QL(MY.QUEUE) CAPEXPRY(NOLIMIT) CUSTOM('CAPEXPRY(5000)') In this instance, the first-class attribute is always used by the queue managers that do support it, and the CUSTOM attribute is used by those that do not. Therefore, if any queue managers are being backwards migrated, only the CUSTOM CAPEXPRY value should be set, to avoid confusion.
About this task
A queue manager can only be backwards migrated if it outputs the CSQY039I message at start up. In this case you can use the information in this topic to perform the backwards migration.
- After performing a
START QMGR BACKMIG(vrm), the queue manager is ready to be started at the specified level.If, instead, you start the queue manager at a higher version level than was specified for the BACKMIG operation, the queue manager forward-migrates the queue manager to the higher version, and it is no longer possible to backwards migrate unless you repeat the
START QMGR BACKMIGoperation. - The BACKMIG operation makes direct changes to the page sets of IBM MQ and the objects stored on them. This means that you can restart the queue manager at the specified BACKMIG version, even if an IPL occurs before queue manager restart, or if the queue manager is started on a different LPAR.
If a queue manager issues the CSQY040I message at start up, backwards migration is not supported, and the procedure described in the following text is not applicable. If you have a back up of the queue manager data, prior to the migration, you could use that data to start the queue manager up at the earlier release.
Procedure
Results
Early code refers to the IBM MQ load modules that must be loaded into the Link Pack Area (LPA) for IBM MQ to act as a z/OS subsystem. When a command is issued to a queue manager, or when an application connects to a queue manager, the first action taken by the IBM MQ system is to load the early code.
The LPA must contain the IBM MQ early code modules from the latest version of IBM MQ running on the system. For example, if an IBM MQ for z/OS 10.0 and IBM MQ for z/OS 9.4.0 queue manager run on the same system, the early code for IBM MQ for z/OS 10.0 must be loaded in the LPA.
For more information, see Early code.