In this scenario, the online change prepare command fails
due to a timeout error. Because one IMS never
receives the prepare phase, the command times out while waiting for
a response. Online change must be aborted after a prepare failure.
The following table identifies the command sequence and
codes returned during this scenario:
Table 1. Scenario 4: command sequence
and codes for failed prepare command due to timeout error
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(MODBLKS) |
0 |
0 |
91 |
C |
3000 |
INIT OLC PHASE(PREPARE) TYPE(MODBLKS) |
|
|
|
10 |
4110 |
INIT OLC PHASE(COMMIT) |
2 |
2 |
B2 |
C |
3004 |
TERMINATE OLC |
0 |
0 |
3 |
4 |
100C |
INIT OLC PHASE(PREPARE) TYPE(MODBLKS) |
0 |
0 |
0 |
0 |
0 |
INIT OLC PHASE(COMMIT) |
0 |
0 |
0 |
0 |
0 |
Procedure
- In this scenario, IMS A
is the command master, and the INITIATE OLC PHASE(PREPARE)
TYPE(MODBLKS) command is issued; IMS A is the command master. SCI goes down before IMS C receives the prepare phase. IMS A and IMS B successfully complete the prepare phase
locally and set completion codes of 0 for themselves. The RM process
step response times out, and RM returns the process step results to IMS A. IMS A
sets a completion code of 91 (time out) for IMS C. IMS A
rejects the prepare command because of the timeout error. After the
failure, IMS A and IMS B remain in an online change prepare state,
and IMS C is not in an online
change state. IMS A sets an overall
return code of C and reason code of 3000 (prepare worked for some
of the IMS systems). Because IMS C does not do the prepare and
a prepare failure occurred, the online change must be aborted.
In this situation, you should issue QUERY MEMBER
TYPE(IMS) to see the state of the IMS systems to determine what to do.
- Another INIT OLC PHASE(PREPARE) TYPE(MODBLKS) command
is issued. However, because online change must be aborted after a
prepare failure, this prepare command also fails. IMS A, the command master, detects that it is
already in a prepare state and rejects the command with a return code
of 10 and a reason code of 4110. (The INIT OLC command
is rejected because the command does not apply to the online change
state of the command master.)
- An INIT OLC PHASE(COMMIT) command is
issued. The installation mistakenly tries to commit the online change
after the prepare failure. IMS A
is once again the command master. IMS A
performs commit phase 1 locally, then sends commit phase 1 to IMS B and IMS C. IMS A
and IMS B successfully perform
commit phase 1 locally. IMS C
rejects the commit phase 1 because it is not in an online change prepare
state. IMS C returns a completion
code of B2 (IMS state error). IMS A detects the error and sets
the completion code to 2 (incomplete) for IMS A
and IMS B. IMS A also returns a completion code of B2 (IMS state error). IMS A then terminates commit processing. The
command fails with a return code of C and a reason code of 3004 (no IMS systems successfully completed
command).
- A TERMINATE OLC command is issued to
abort the global online change. IMS A
and IMS B successfully complete
the abort. Because IMS C is not
in an online change state, it returns a completion code of 3 (IMS already in requested online change
state). IMS A, the command master,
treats this as acceptable, and returns an overall return code of 4
and a reason code of 100C (successful, but not applicable to some IMS systems).
- An INIT OLC PHASE(PREPARE) TYPE(MODBLKS) command
is issued. The prepare succeeds.
- An INIT OLC PHASE(COMMIT) command is
issued. The commit succeeds.