The BSDS conversion utility (CSQJUCNV)

You can use the CSQJUCNV BSDS conversion utility to convert a version 1 bootstrap data set (BSDS) to version 2. CSQJUCNV runs as a batch job.

A version 1 BSDS supports 6 byte log RBA (Relative Byte Address) values. A version 2 BSDS can be used by queue managers running IBM® MQ 8.0, and supports 8 byte log RBA values. For more information about the change from 6 byte to 8 byte log RBA, see Larger log Relative Byte Address.

A version 2 BSDS can be used only by queue managers that have Version 8.0 new functions enabled with OPMODE. If the queue manager is in a queue-sharing group, all queue managers in the queue-sharing group must either have been started with OPMODE(NEWFUNC,800), or added into the queue-sharing group at Version 8.0, before the BSDS can be converted to version 2.

If the parameters provided specify that the queue manager is in a queue-sharing group, the utility checks that the queue managers are at the correct level, before allowing the conversion of the BSDS to proceed. For queue managers that are not in a queue-sharing group,the utility does not check that the queue manager has been started in Version 8.0 new function mode.

The converted BSDSs are written to new data sets. These new data sets must be allocated with similar attributes to the current BSDS before the utility is run, and must be empty. A version 2 BSDS contains more data than a version 1 BSDS, therefore, you must ensure that the new data sets are allocated with sufficient available space. See Planning your logging environment, and the associated topics, for the recommended values when defining a new BSDS.

The current BSDSs are not modified and can be used to start the queue manager, should the attempt to convert the BSDSs and restart the queue manager with the new BSDS be unsuccessful.

Important:
  1. Only run this utility when the queue manager that owns the BSDS is stopped.
  2. Do not attempt to start the queue manager with the new BSDS until the utility has completed successfully. If a queue manager is started with a BSDS that is the output of an unsuccessful or incomplete conversion, it terminates with reason code 00D10121.
  3. To use this utility, your user ID of the job must have read and write access to both the old and new BSDSs.
  4. If you are using queue sharing groups, for each user ID that might use the CSQJUCNV utility GRANTs are needed for Db2® plans.

    Run CSQ45GEX in hlq.SCSQPROC to grant execute authority for the Db2 plans before you use CSQJUCNV, or CSQJUCNV receives SQL error -981 and REASON code 00C12219. See Preparing to migrate a single IBM MQ for z/OS® queue manager for more information on CSQ45GEX.

Invoking the CSQJUCNV utility

The utility runs as a z/OS batch program. Figure 1 shows an example of the JCL used to invoke the CSQJUCNV utility for a queue manager that is a member of a queue-sharing group.

Figure 1. Sample JCL to invoke the CSQJUCNV utility

//CONVERT EXEC PGM=CSQJUCNV,REGION=32M,
//             PARM=('INQSG,qsgname,dsgname,db2ssid')
//STEPLIB  DD DSN=thlqual.SCSQAUTH,DISP=SHR
//         DD DSN=thlqual.SCSQANLE,DISP=SHR
//         DD DSN=db2qual.SDSNLOAD,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSUT1   DD DSN=hlq.BSDS01,DISP=SHR
//SYSUT2   DD DSN=hlq.BSDS02,DISP=SHR
//SYSUT3   DD DSN=newhlq.BSDS01,DISP=OLD
//SYSUT4   DD DSN=newhlq.BSDS02,DISP=OLD
Sample JCL to run the utility is also provided in thlqual.SCSQPROC(CSQ4BCNV).

Syntax, keywords, and parameters

BSDS conversion utility

Read syntax diagramSkip visual syntax diagram PARM=(' INQSG,qsgname,dsgname,db2ssidNOQSG')
PARM
This field must contain one of the following parameters to indicate whether the queue manager is a member of a queue-sharing group or not, followed by any function-specific parameters described in the following text:
INQSG
The queue manager that owns the BSDS is a member of a queue-sharing group. Specifying this parameter causes the utility to verify that all members of the queue-sharing group have either been started with OPMODE(NEWFUNC,800), or been added into the queue-sharing group at Version 8.0.

See Implementing the larger log Relative Byte Address for details on how you perform this task.

The utility terminates with a nonzero reason code, without writing anything to the output BSDS, if this condition is not met.
qsgname
The queue-sharing group name
dsgname
The Db2 data-sharing group name
db2ssid
The Db2 subsystem ID
NOQSG
The queue manager that owns the BSDS is not a member of a queue-sharing group. The BSDS is converted, regardless of whether the queue manager has been started with OPMODE(NEWFUNC,800).
Attention: Do not specify this parameter for a queue manager that is a member of a queue-sharing group.

Data definition (DD) statements

CSQJUCNV recognizes DD statements with the following DD names:
SYSUT1
Specifies the old BSDS that is to be converted. This statement is required.
SYSUT2
Specifies the second copy of the old BSDS that is to be converted. If you are using dual BSDS, you should specify this.
SYSUT3
Specifies the new, converted BSDS. This statement is required.
SYSUT4
Specifies the second copy of the converted BSDS. This statement is required if the installation uses dual BSDSs; otherwise, it is optional.
SYSPRINT
Contains the output messages from the conversion utility. This statement is required.