BMP restart after system failure

IMS does not automatically restart BMPs after a system failure. You must start them yourself after IMS has completed its restart processing. The way in which you restart a BMP depends on whether its last checkpoint records exist in the OLDS.

When the last checkpoint records are in the OLDS, you can specify one of four values during restart:

Specify this value as an EXEC parameter. When you specify LAST, you must not change the BMP's job name, PSB name, or program name; IMS uses these names to locate checkpoint information for the BMP.

Restarting a BMP using XRST

If CKPTID=LAST is coded, IMS can automatically locate the last checkpoint taken by the BMP under most conditions if all of the following requirements are met:
  • The BMP is restarted with the same job name, the same PSB, and the same program name used when it ended abnormally.
  • The BMP restarts on the same IMS system that it ended abnormally on, and this system was not cold-started after the BMP abend occurred.
  • If the restart checkpoint is no longer available on an OLDS data set, the SLDSREAD Logger function must be available . In this case, the checkpoint is on an archived SLDS data set.

If these requirements are met, an IMSLOGR DD statement that points to the log data set is not required. Coding an IMSLOGR DD statement and using IMS automatic checkpoint location are mutually exclusive processes. If an IMSLOGR DD statement is specified, IMS does not use the automated process to locate the checkpoint, but only searches the IMSLOGR concatenation. If the required checkpoint is not found in the concatenation, the BMP ends abnormally with abend code U0102.

If these requirements are not met, an IMSLOGR DD statement that points to the correct log data set is required. Automatic checkpoint location is restricted to CKPTID=LAST. If you use a checkpoint value, you must code the appropriate IMSLOGR DD statement.
Important: If you do not specify CKPTID=LAST, the data updated between the specified checkpoint and the actual last checkpoint taken has been committed by IMS.

If the program issued XRST and CHKP calls, you can restart it from the last checkpoint by specifying the checkpoint ID in the JCL and supplying, as input, the SLDS created in the program's previous execution.