CQSCHKPT request

Use the CQSCHKPT request to initiate either a CQS system checkpoint or a structure checkpoint.

Format for CQSCHKPT

CHKPTSTR function of CQSCHKPT

You use the CHKPTSTR function of a CQSCHKPT request to initiate a CQS structure checkpoint for a queue structure. Structure checkpoint is not supported for a resource structure.

Read syntax diagramSkip visual syntax diagramCQSCHKPTFUNC=CHKPTSTRCQSTOKEN= cqstokenaddressPARM= parmaddressCOUNT= countLIST= listaddressECB= ecbaddressRETCODE= returncodeaddressRSNCODE= reasoncodeaddressCQSCHKPTFUNC=CHKPTSTRCQSTOKEN= cqstokenaddressPARM= parmaddressCOUNT= countLIST= listaddressECB= ecbaddressRETCODE= returncodeaddressRSNCODE= reasoncodeaddressLISTVER= 1LISTVER= listversion

CHKPTSYS function of CQSCHKPT

Use the CHKPTSYS function of a CQSCHKPT request to initiate a CQS system checkpoint.

Read syntax diagramSkip visual syntax diagramCQSCHKPTFUNC=CHKPTSYSCQSTOKEN= cqstokenaddressPARM= parmaddressCOUNT= countLIST= listaddressECB= ecbaddressRETCODE= returncodeaddressRSNCODE= reasoncodeaddressCQSCHKPTFUNC=CHKPTSYSCQSTOKEN= cqstokenaddressPARM= parmaddressCOUNT= countLIST= listaddressECB= ecbaddressRETCODE= returncodeaddressRSNCODE= reasoncodeaddressLISTVER= 1LISTVER= listversion

DSECT function of CQSCHKPT

Use the DSECT function of a CQSCHKPT request to include equate (EQU) statements in your program for the CQSCHKPT parameter list length and CQSCHKPT return and reason codes.

Read syntax diagramSkip visual syntax diagramCQSCHKPTFUNC=DSECT

Usage of CQSCHKPT

For a structure checkpoint, CQS dumps the queues to DASD for each structure specified in the checkpoint list. If the structure is currently in overflow mode, the overflow structure is also dumped to DASD.

For a system checkpoint, CQS logs the internal tables for each structure specified in the checkpoint list. If the structure is currently in overflow mode, CQS also logs the internal tables for the overflow structure.

Parameter descriptions

COUNT=count
4-byte input parameter that specifies the number of entries in the checkpoint list.
CQSTOKEN=cqstokenaddress
Input parameter that specifies the address of the 16-byte CQS registration token that uniquely identifies the client's connection to CQS. The registration token is returned by the CQSREG request.
ECB=ecbaddress
4-byte input parameter that specifies the address of the z/OS® event control block (ECB) used for asynchronous requests. If ECB is specified, the request is processed asynchronously; otherwise it is processed synchronously.
LIST=listaddress
4-byte input parameter that specifies the address of the checkpoint list. The checkpoint list should contain an entry for each of the structures for which the client requests a checkpoint.

The CQSCHKPL list entry DSECT maps the list entries and can be used by the client. Multiple list entries must reside in contiguous storage.

Each list entry contains the following parameters:

connecttoken
16-byte input parameter that specifies the connect token returned by the CQSCONN request. The connect token uniquely identifies the client's connection to a particular coupling facility structure managed by this CQS. This parameter is required.
compcode
4-byte output field to receive the completion code from the request. Possible completion codes are:
X'00000000'
Completed successfully.
X'00000004'
Connect token is invalid.
X'00000008'
CQS checkpoint request not allowed until CQS restart has successfully completed a system checkpoint.
X'0000000C'
A CQSRSYNC is required for this structure.
X'00000010'
Checkpoint already in progress for structure.
X'00000014'
Structure is inaccessible. Retry request later.
X'00000018'
CQS internal error.
X'00000020'
CQSCHKPT FUNC=CHKPTSTR is invalid for a resource structure.
X'00000024'
z/OS logger write error, checkpoint was not taken.
LISTVER=1 | listversion
Input parameter that specifies an equate for the list version. Use the DSECT function of a CQSCHKPT request to include equate (EQU) statements in your program for the CQSCHKPT list versions.
PARM=parmaddress
4-byte input parameter that specifies the address of a parameter list used by the request to pass parameters to CQS. The length of the storage area must be at least equal to the EQU statement value CQSCHKPT_PARM_LEN (defined using the FUNC=DSECT request).
RETCODE=returncodeaddress
Output parameter that specifies the address of a 4-byte field to contain the CQSCHKPT return code.

If the return code in register 15 is nonzero, the values in the return and reason code fields are invalid, because the CQS interface detected an error and was unable to send the request to CQS.

RSNCODE=reasoncodeaddress
Output parameter that specifies the address of a 4-byte field to contain the CQSCHKPT reason code.

Return and reason codes for CQSCHKPT

The following table lists the return and reason code combinations that can be returned for CQSCHKPT requests. Use a CQSCHKPT FUNC=DSECT request to include equate statements in your program for the return and reason codes.

Table 1. CQSCHKPT return and reason codes
Return code Reason code Meaning
X'00000000' X'00000000' Request completed successfully.
X'00000008' X'00000210' cqstoken is invalid.
X'00000008' X'00000218' FUNC is invalid.
X'00000008' X'00000250' count is invalid.
X'00000008' X'00000254' listaddress is invalid.
X'00000008' X'00000284' Parmlist version is invalid.
X'00000008' X'00000288' List version is invalid.
X'0000000C' X'00000300' Request succeeded for at least one, but not all, list entries. See compcode for individual errors.
X'0000000C' X'00000304' Request failed for all list entries. See compcode for individual errors.
X'00000010' X'0000040C' CQS shutdown is pending. Client-initiated checkpoint requests are not allowed.
X'00000010' X'00000430' No CQS address space.