Using Db2 commit statements to trigger checkpoints


This section describes how to use Db2 commit statements in an application program with 

AR/CTL

. During program execution, Db2 commit statements trigger 

AR/CTL

 checkpoint requests. This service reduces the changes necessary for an existing program. When you use Db2 commit statements, keep the following issues in mind:

  • For a Db2 commit statement to trigger checkpoint requests, an application program must use the ARCXRST call, the AR/CTL common call XRST function, or the Automatic Restart option. During restart request processing, AR/CTL performs the processing necessary to prepare for Db2 commit statements to trigger checkpoint requests. AR/CTL saves the user areas identified in the restart call or all of working storage if the program is using the Automatic Restart option.
  • An application program cannot issue IMS format calls with Db2 commit statements. IMS does not allow Db2 commit statement processing from within an IMS application program.
  • An application program must use Db2 commit statements only, or one type of AR/CTL checkpoint request (whether from an explicit call or from the Automatic Checkpoints option) only, but not both.
  • AR/CTL automatically generates a checkpoint ID when an application program issues a Db2 commit statement.
  • An existing application program might issue Db2 commit statements for the sole purpose of releasing Db2 locks. You might need to review the program logic to determine whether the use of Db2 commit statements is appropriate for application restart.
  • An application program retains control over issuing the Db2 commit statement.
  • If an application program uses remote VSAM access services (VSAM file sharing), the frequency of checkpoints issued can affect performance of CICS systems that own shared VSAM data sets. When an application program updates a record in the CICS environment, CICS locks the record or control interval (CI) until the program commits the changes by issuing a checkpoint (CICS syncpoint). As the interval between program checkpoints (commits) grows longer, more locks are held, which can adversely affect other tasks or jobs that are processing against the same data.
  • If an application program is using CURSOR WITH HOLD, the program does not need to reposition the Db2 tables after a CHKP call. The main reason for issuing checkpoint calls/commits when using CURSOR WITH HOLD is to release Db2 locks. These locks will be released during checkpoint/commit processing, CLOSE CURSOR, or program termination.



 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*

BMC AMI Application Restart Control for Db2, IMS and VSAM 4.2