Scenario 2: online change prepare command is rejected because an IMS is down

In this online change scenario, an INITIATE OLC PHASE(PREPARE) TYPE(ALL) command was issued and routed to IMS A. The INITIATE OLC PHASE(PREPARE) command is rejected because two IMS systems are down (IMS B abends and IMS C shuts down normally), but no FRCABND or FRCNRML options were specified when the command was issued.

The following table identifies the command sequence and codes returned during this scenario:

Table 1. Scenario 2: command sequence and codes for failed online change prepare command
Action or event IMS A completion code IMS B completion code IMS C completion code Command return code Command reason code
INIT OLC PHASE(PREPARE) TYPE(ALL) 2 B2 B2 C 3004
INIT OLC PHASE(PREPARE) TYPE(ALL) OPTION(FRCABND,FRCNRML) 0 B2 B2 4 100C
INIT OLC PHASE(COMMIT) 0 B2 B2 4 100C
INIT OLC PHASE(PREPARE) TYPE(ALL) 0     0 0
INIT OLC PHASE(COMMIT) 0     0 0

Procedure

  1. An INITIATE OLC PHASE(PREPARE) TYPE(ALL) command was issued. IMS A is the command master. IMS A detects that IMS B and IMS C are down and that no FRCABND or FRCNRML keywords were specified, so it rejects the command. IMS A returns a completion code of 2 (not done) for itself; IMS A also returns a completion code of B2 (IMS state error) for IMS B and IMS C. IMS A sets an overall return code of C and an overall reason code of 3004 (failed for all IMS systems).
  2. Another INITIATE OLC PHASE(PREPARE) TYPE(ALL) command was issued, this time with FRCABND and FRCNRML. These options force the online change even though IMS systems are down. IMS A is again the command master. IMS A detects that IMS B and IMS C are down, but determines that this is acceptable. IMS A sets a completion code of B2 (IMS state error) for IMS B and IMS C. IMS B and IMS C do not perform the prepare phase, because they are down. IMS A performs the prepare phase locally and returns a completion code of 0 for itself. IMS A then sets an overall return code of 4 and a reason code of 100C (failed for some IMS systems for acceptable reasons).
  3. An INIT OLC PHASE(COMMIT) command is issued; the commit succeeds. IMS A updates the OLCSTAT data set with the new information. IMS A includes a record for itself, but omits a record for IMS B and IMS C. IMS B and IMS C are no longer current with the online change libraries. IMS B and IMS C will have to cold start because the last online change included MODBLKS. If an IMS is down during a MODBLKS online change, it has to cold start.
  4. Another INITIATE OLC PHASE(PREPARE) command is issued. This time, IMS B and IMS C do not participate because they are not current with the online change libraries. Only IMS A participates in the global online change.
  5. An INIT OLC PHASE(COMMIT) command is issued. IMS B and IMS C do not participate because they are not current with the online change libraries. Only IMS A commits the global online change. IMS A sets a completion code of 0 for itself and an overall return code and reason code of 0.