INITIATE OLC command

Use the INITIATE OLC command to initiate the global online change process. The resources that can be changed online are areas, databases, DMBs, Fast Path DEDB databases, MFS formats, programs, routing codes, and transactions. The correct online change command sequence is INITIATE OLC PHASE(PREPARE) followed by INITIATE OLC PHASE(COMMIT).

Restrictions:
  • The INITIATE OLC command is not supported if local online change is enabled.
  • This command is invalid on XRF alternate and FDBR systems.
  • INIT OLC TYPE(MODBLKS) does not apply or is not supported when dynamic resource definition (DRD) is enabled by MODBLKS=DYN in the <COMMON_SERVICE_LAYER> section of the DFSDFxxx PROCLIB member. To change MODBLKS resources in an online system when DRD is enabled, use the IMS type-2 commands CREATE, UPDATE, and DELETE.
  • INIT OLC TYPE(ACBLIB) and INIT OLC TYPE(ACBMBR) do not apply or are not supported when the IMS management of ACBs is enabled by ACBMGMT=CATALOG in the <CATALOG> section of the DFSDFxxx PROCLIB member. To change ACBs in an online system when IMS manages ACBs, submit the changes by using either DDL or one of the IMS catalog population utilities and, if the changes are not activated automatically, issuing the IMPORT DEFN SOURCE(CATALOG).

Subsections:

Environment

The following table lists the environments (DB/DC, DBCTL, and DCCTL) from which the INITIATE command and keywords can be issued.

Table 1. Valid environments for the INITIATE OLC command and keywords
Command / Keywords DB/DC DBCTL DCCTL
INITIATE OLC X X X
OPTION X X X
PHASE X X X
TYPE X X X

Syntax

Read syntax diagramSkip visual syntax diagramINITIATEINITOLCPHASE(COMMIT)PHASE(PREPARE)TYPE(ACBLIB)OPTION(,BLDLFRCABNDFRCNRML)TYPE(ACBMBR)NAME(, acbmbr)OPTION(,FRCNRMLNAMEONLYBLDPSBNO)TYPE(ALL)OPTION(,BLDLFRCABNDFRCNRML)TYPE(FMTLIB)OPTION(,FRCABNDFRCNRML)TYPE(MODBLKS)OPTION(,FRCABNDFRCNRML)

Keywords

The following keywords are valid for the INITIATE OLC command:

OPTION()
Specifies an additional function to be performed during an online change. Following is a list of additional functions:
BLDL
Sends asynchronous information message DFS3498I to the system console for each PSB or DMB not found in ACBLIB. This message does not affect the success of the command.
BLDPSBNO

Specifies only DBDs to be added without checking the reference list of associated PSBs.

By default, when a DBD is specified on the NAME keyword of the INITIATE OLC PHASE(PREPARE) TYPE(ACBMBR) command, the ACB member online change (OLC) function automatically copies all associated PSBs and externally referenced DBDs from the staging ACB library to the active ACB library.

Depending on the number of PSBs and DBDs, the amount of time required for the copying process can be significant.

FRCABND
Forces the online change prepare phase even if one or more required IMS systems in the IMSplex have ended abnormally. An IMS is required to participate in the global online change if it is listed in the OLCSTAT data set as being current with the online change libraries. An IMS is listed in the OLCSTAT data set because it either participated in the last global online change or cold started since the last global online change. A successful global online change specified with the FRCABND removes an abnormally ended IMS from the list of required IMS systems in the OLCSTAT data set.

If the INITIATE OLC PHASE(PREPARE) command is specified with the FRCABND keyword and the command fails for any IMS, you can proceed with an INITIATE OLC PHASE(COMMIT) command, if you want, after canceling those IMS systems where prepare failed. Otherwise, you must cancel (abort) the online change and start over.

FRCNRML
Forces the online change prepare phase even if one or more required IMS systems in the IMSplex have terminated normally. An IMS is required to participate in the global online change if it is listed in the OLCSTAT data set as being current with the online change libraries. An IMS is listed in the OLCSTAT data set because it either participated in the last global online change or cold started since the last global online change. A successful global online change specified with the FRCNRML keyword removes an IMS that shut down normally from the list of required IMS systems in the OLCSTAT data set.

If the INITIATE OLC PHASE(PREPARE) command is specified with the FRCNRML keyword and the command fails for any IMS, you can proceed with an INITIATE OLC PHASE(COMMIT) command, if you want, after shutting down those IMS systems where prepare failed. Otherwise, you must terminate the online change and start over.

NAMEONLY
Specifies that only the DBDs and PSBs that are specified in the NAME keyword are to be processed.

By default, when a DBD is specified on the NAME keyword of the INITIATE OLC PHASE(PREPARE) TYPE(ACBMBR) command, the ACB member online change (OLC) function automatically copies all associated PSBs and externally referenced DBDs from the staging ACB library to active ACB library. Depending on the number of PSBs and DBDs, the amount of time required for the copying process can be significant.

In many cases, you can significantly reduce the amount of time the ACB member online change function takes by specifying OPTION(NAMEONLY) on the INITIATE OLC PHASE(PREPARE) TYPE(ACBMBR) command. The NAMEONLY option limits the processing of the ACB member online change function to only the DBDs and PSBs that are specified in NAME() keyword of the command.

If a PSB is specified in the NAME keyword, the following rules apply:
  • Regardless of whether a PSB is new to the active ACB library or not, if the DBDs in the intent list have not been modified, this PSB is copied to the active ACB library.
  • If a PSB is not new to the active ACB library and the DBDs in the intent list have been modified, this PSB is not copied to the active ACB library and a completion code 12B is returned.
If a DBD is specified in the NAME keyword, the following rules apply:
  • If a DBD is new to the active ACB library and the DBDs in the reference list have not been modified, this DBD is copied to the active ACB library.
  • If a DBD is new to the active ACB library and the DBDs in the reference list have been modified, this DBD is not copied to the active ACB library and a completion code 12C is returned.
  • If a DBD is not new to the active ACB library and has been modified, this DBD is not copied to the active ACB library and a completion code 12A is returned.
NAME(acbmbr)
Specifies that one or more ACB library members are to be copied from the staging ACB library to the active ACB library. acbmbr can be a DBD or a PSB that is being changed or added.

Wildcard characters are not supported in the member names.

The maximum number of DBDs and PSBs that can be specified on the acbmbr parameter is limited to 100.

If a DBD is being changed and OPTION(NAMEONLY) is not specified, you do not have to specify the associated PSBs on the command because all of the PSBs that are associated with the changed DBD are copied automatically from the staging ACB library to the active ACB library.

If a DBD that is being changed or added has external references and OPTION(NAMEONLY) is not specified, the secondary index DBD does not have to be specified on the acbmbr parameter. The INIT OLC TYPE(ACBMBR) command processing copies all externally referenced members of the DBD from the staging ACB library to the active ACB library.

PHASE()
Specifies the online change phase to start. The PREPARE phase must be performed first, followed by the COMMIT phase.
PREPARE
Performs the online change prepare phase on each IMS system listed in the OLCSTAT data set by specifying which resources are to be added, changed, and deleted. PREPARE is not recovered across an emergency restart and must be reentered after restart if the COMMIT phase did not complete before IMS failure.

The prepare phase is rejected if any IMS systems in the IMSplex current with the online change libraries are down, unless the FRCABND or the FRCNRML option is used. The OLCSTAT data set lists the IMS systems that are current with the online change libraries. These IMS systems either participated in the last global online change or cold started after the last global online change. To force a global online change in spite of abended IMS systems, use the FRCABND option. To force a global online change in spite of IMS systems that are shut down normally, use the FRCNRML option. The prepare phase fails if any IMS participating in the global online change prepare phase fails, detects an error, or fails to respond in time. Zero, one, or more of the IMS systems remain in an online change prepare complete state. Issue the QUERY MEMBER TYPE(IMS) SHOW(STATUS) command to display the online change state of all the IMS systems in the IMSplex. Evaluate the QUERY MEMBER TYPE(IMS) output to help you decide whether to issue the INITIATE OLC PHASE(PREPARE) command to try the PREPARE phase again, or to issue the TERMINATE OLC command to terminate the online change. The IMS systems that are in an online change state remain in an online change state until you terminate or commit the online change. IMS does not automatically terminate online change because of a failure. IMS leaves the IMS systems in their online change states. You must issue the QUERY MEMBER TYPE(IMS) SHOW(STATUS) command and evaluate the output to decide whether to terminate the online change or attempt the online change phase again.

Restriction: The INITIATE OLC PHASE(PREPARE) command is rejected if the IMS to which the command is routed does not support global online change. If this situation occurs and there is an IMS that supports global online change, you must route the command to a specific IMS that supports global online change.
COMMIT
Performs the online change commit phase on each IMS listed in the OLCSTAT data set, which commits the online changes by bringing all the newly defined resources online, updating changed resources, and removing deleted resources. The commit phase consists of commit phase 1, the OLCSTAT data set update, commit phase 2, and commit phase 3. The OLCSTAT data set is updated with the new current online change libraries and the list of IMS systems that are current with the current online change libraries. The commit phase 2 switches the online environment from the active ACBLIB, FORMAT, or MODBLKS libraries to the inactive libraries containing the new or changed resource descriptions.
Recommendation: Use the /DISPLAY MODIFY command to display the work in progress for resources to be changed or deleted, before attempting the COMMIT phase.

When COMMIT is successful, the modifications persist across all IMS restarts, unless global online change occurs while this IMS is down.

The commit phase fails if any IMS participating in the global online change commit phase fails, detects an error, or fails to respond in time. Zero, one, or more of the IMS systems might be in an online change prepare complete state, a commit phase 1 complete state, or no longer in an online change state because commit phase 2 succeeded. Issue the QUERY MEMBER TYPE(IMS) SHOW(STATUS) command to display the online change state of all the IMS systems in the IMSplex. Evaluate the QUERY MEMBER TYPE(IMS) output to help you decide whether to issue the INITIATE OLC PHASE(COMMIT) command to try the commit again, or issue the TERMINATE OLC command to terminate the online change. The IMS systems that are in an online change state remain in an online change state until you terminate or commit the online change.

IMS does not automatically terminate online change because of a failure. IMS leaves the IMS systems in their online change states. You must issue the QUERY MEMBER TYPE(IMS) SHOW(STATUS) command and evaluate the output to decide whether to terminate the online change or attempt the online change phase again.

If a database is deleted, IMS closes the database and makes it unavailable to programs. Also, if the database is authorized for DBRC, COMMIT deauthorizes it.

If FMTLIB is being changed, most new and in-progress requests are queued for processing after the INITIATE OLC PHASE(COMMIT) command is completed.

Most new and in-progress requests are queued for processing.

An INITIATE OLC PHASE(COMMIT) command is rejected if:
  • An INITIATE OLC PHASE(PREPARE) command was not previously entered.
  • Commit phase 1 fails on one or more IMS systems in the IMSplex.
  • Transactions to be deleted have messages queued.
  • Transactions to be changed by the following system definition keywords have messages queued:
    • MSGTYPE
    • INQUIRY
    • FPATH
    • EDIT
    • SPA
    • SERIAL
  • Transactions to be changed by keywords not shown in the previous bullet have messages queues and the transactions have not been the object of a /STOP or /PSTOP command.
  • Transactions with access to programs or databases to be changed or deleted are prevented from updating and the transactions have not been the object of a /STOP or /PSTOP command. When a transaction shows a status of USTOP during a /DISPLAY TRAN command, the /STO command might have to be entered because the /PSTOP command might not enable the INITIATE OLC command to complete the transaction.
  • Any program (PSB) that is currently scheduled has a program, database, or transaction change or deletion. This includes Wait for Input (WFI) and Fast Path transactions. All WFI and Fast Path regions that reference changed or deleted routing codes, programs, or databases must be stopped before entering the INITIATE OLC PHASE(COMMIT).
  • An I/O error occurs while reading the inactive MFS FORMAT library directory or the resident index ($$IMSDIR) member.
  • A /START DATABASE command is in progress for any database that is changed or deleted.
  • A /DBDUMP or /DBRECOVERY command is in progress for any database that is changed or deleted.
  • An IMS that participated in the prepare phase was shut down normally or ended abnormally. The online change must be aborted and started over.
  • OM routed the command to an IMS where local online change is enabled.
  • The OLCSTAT data set is not locked for global online change.

    The INITIATE OLC PHASE(PREPARE) command locks the OLCSTAT data set, so that no IMS systems can initialize during the global online change. The commit command is rejected if the lock is not set. The INITIATE OLC PHASE(PREPARE) command might not have completed successfully or the OLCSTAT data set contents might be invalid.

  • An IFP region is running. The INITIATE OLC PHASE(COMMIT) command is rejected because an active route code exists. All IFP regions must be terminated before issuing a COMMIT.

IMS does not reject the INITIATE OLC PHASE(COMMIT) command if the online change indirectly affects transactions (having work in progress) that reference resources in the ACB library or in the MODBLKS data set that are directly affected by the online change. These transactions themselves are not being changed (no attribute on the TRANSACT macro is being changed), but they reference a PDIR, PSB, or DMB that is affected by the online change. A transaction can be indirectly affected by an online change in one of the following situations:

  • The transaction references a PSB directory (PDIR) control block in the IMS.MODBLKS data set that is being changed.
  • The transaction references a PSB in the ACB library that is being changed.
  • The transaction references a PSB directory (PDIR) control block in the IMS.MODBLKS data set which in turn references a database that is being changed online.
  • The transaction references a PSB in the ACB library (IMS.ACBLIB) that references a database that is being changed online.

Operator action might be required to prevent the preceding conditions. For example, if a program or database is scheduled, the operator must either wait until the program or database is finished before the INITIATE OLC PHASE(COMMIT) command is entered or issue the /STOP, /PSTOP, or UPDATE TRAN command for the associated transaction.

If IMS is in an IMSplex and Resource Manager (RM) is using a resource structure, the transactions being added by the online change are registered to RM if they are not already registered to RM. If any error occurs during the CSLRMUPD request to register the transactions, the /MODIFY or INITIATE OLC command fails and IMS will be in a COMMIT2F state.

If an INITIATE OLC PHASE(COMMIT) command results in the IMS remaining in a COMMIT2F state, a completion code of the error that caused it is returned to OM. If the error can be fixed, the INITIATE OLC PHASE(COMMIT) can be reissued and CSLRMUPD tried again and the online change completed. If the error cannot be fixed, the IMS must be canceled and warm started as the online change is not complete.

TYPE()
Specifies the types of resources that are changed online. The resources are as follows:
ACBLIB
Causes IMS to prepare to add, change, or delete database descriptors (DMB) and program descriptors (PSB) to ACBLIB. The online environment is switched from the active ACBLIB to the inactive ACBLIB containing new or changed DMB and PSBs. ACBLIB members that are not found are displayed as CHANGED because a DDIR or PDIR exists in MODBLKS. Additions or deletions to ACBLIB require the MODBLKS parameter. Quiesces transactions to be changed or deleted and transactions that access databases or programs to be changed or deleted. Fast Path DEDBs are supported but Fast Path MSDBs are not supported.

ACBLIB is disabled if IMS management of ACBs is enabled for IMS. If IMS management of ACBs is enabled on all of the IMS systems, the INITIATE OLC TYPE(ACBLIB) command fails. If IMS management of ACBs is enabled on some of the IMS systems, the INITIATE OLC PHASE(PREPARE) TYPE(ACBLIB) command succeeds with a warning return code indicating that the command was not applicable to some IMS systems. The IMS systems where online change for ACBLIB is enabled, perform the ACBLIB online change. The IMS systems where IMS management of ACBs is enabled, return a completion code of 1 (not applicable).

If the INITIATE OLC PHASE(PREPARE) command is specified, with type ACBLIB and MODBLKS and/or FMTLIB, the OLC is performed as follows:
  • IMS systems where ACBLIB online change is enabled, perform the ACBLIB OLC.
  • IMS systems where IMS management of ACBs is enabled, ignore the ACBLIB keyword.
  • IMS systems where MODBLKS online change is enabled, perform the MODBLKS OLC.
  • IMS systems where DRD is enabled, ignore the MODBLKS keyword.
  • IMS systems where FMTLIB is enabled, perform FMTLIB OLC.
  • DBCTL systems ignore the FMTLIB keyword. DBCTL IMS systems with DRD and IMS management of ACBs enabled ignore the MODBLKS, FMTLIB and ACBLIB keywords and no OLC is performed.
ACBMBR
Specifies that an ACB library member online change process is to be performed for the specified ACB library member name or names. The command response lists all the members that are to be copied from the staging ACB library to the active ACB library during the COMMIT command processing.

When you issue either an INIT OLC PHASE(PREPARE) TYPE(ALL) command or an INIT OLC PHASE(PREPARE) TYPE(ACBLIB) command, IMS initiates a full online change process for either the ACB library or the ACB, FMT, and MODBLKS libraries. In either case, an ACB library member online change process is not involved.

After an INITIATE OLC PHASE(COMMIT) command, when the TYPE(ACBMBR) online change completes successfully, the active and inactive ACB library suffixes and the MODID are not updated in the OLCSTAT data set or in the IMS control blocks because ACB library member online change processing changes or adds ACB members directly into the active ACB library.

ACBMBR OLC is disabled if IMS management of ACBs is enabled for IMS. If IMS management of ACBs is enabled on all the IMS systems, the INITIATE OLC TYPE(ACBMBR) command fails. If IMS management of ACBs is enabled on some IMS systems, the INITIATE OLC PHASE(PREPARE) TYPE(ACBMBR) command succeeds with a warning return code indicating that the command was not applicable to some IMS systems. The IMS systems where online change for ACBLIB is enabled, perform the ACBMBR online change. The IMS systems where IMS management of ACBs is enabled return a completion code of 1 (not applicable).

ALL
Prepares to add, change, and delete resources for the ACBLIB, FMTLIB, or MODBLKS libraries. The BLDL function is performed for ACBLIB. ALL does not include the ACBMBR online change.
If the INITIATE OLC PHASE(PREPARE) command is specified with ALL, the OLC is performed as follows:
  • IMS systems where ACBLIB online change is enabled, perform the ACBLIB OLC.
  • IMS systems where IMS management of ACBs is enabled, ignore the ACBLIB keyword.
  • IMS systems where MODBLKS online change is enabled, perform the MODBLKS OLC.
  • IMS systems where DRD is enabled, ignore the MODBLKS keyword.
  • IMS systems where FMTLIB is enabled, perform FMTLIB OLC.
  • DBCTL systems ignore the FMTLIB keyword. DBCTL IMS systems with DRD and IMS management of ACBs enabled ignore the MODBLKS, FMTLIB and ACBLIB keywords and no OLC is performed.
FMTLIB
Causes IMS to prepare to add, change, or delete MFS maps in the FMTLIB library that are produced by the MFS Language utility and Service utility. The online environment is switched from the active FMTLIB to the inactive FMTLIB containing new MFS maps produced by the MFS Language utility and Service utility. The FMTLIB parameter is ignored with DBCTL. There are no restrictions on the use of MFS format blocks until the INITIATE OLC PHASE(COMMIT) command is entered.
If the INITIATE OLC PHASE(PREPARE) command is specified with type FMTLIB and MODBLKS and/or ACBLIB, the OLC is performed as follows:
  • IMS systems where ACBLIB online change is enabled, perform the ACBLIB OLC.
  • IMS systems where IMS management of ACBs is enabled, ignore the ACBLIB keyword.
  • IMS systems where MODBLKS online change is enabled, perform the MODBLKS OLC.
  • IMS systems where DRD is enabled, ignore the MODBLKS keyword.
  • IMS systems where FMTLIB is enabled, perform FMTLIB OLC.
  • DBCTL systems ignore the FMTLIB keyword. DBCTL IMS systems with DRD and IMS management of ACBs enabled ignore the MODBLKS, FMTLIB and ACBLIB keywords and no OLC is performed.
MODBLKS
Causes IMS to prepare to add, change, or delete database, transaction, program, or RTCODE resources in the MODBLKS library.

The online environment is switched from the active MODBLKS library to the inactive MODBLKS library. The MODBLKS library contains a subset of control blocks produced by IMS system definition. Transactions to be changed or deleted and transactions that access databases or programs to be changed or deleted are quiesced.

MODBLKS is disabled if DRD is enabled for IMS. If DRD is enabled on all the IMS systems, the INITIATE OLC TYPE(MODBLKS) command fails. If DRD is enabled on some IMS systems, the INITIATE OLC PHASE(PREPARE) TYPE(MODBLKS) command succeeds with a warning return code indicating that the command was not applicable to some IMS systems. The IMS systems where online change for MODBLKS is enabled perform the MODBLKS online change. The IMS systems where DRD is enabled return a completion code of 1 (not applicable).

If the INITIATE OLC PHASE(PREPARE) command is specified, with type MODBLKS and FMTLIB and/or ACBLIB, the OLC is performed as follows:
  • IMS systems where ACBLIB online change is enabled perform the ACBLIB OLC.
  • IMS systems where IMS management of ACBs is enabled ignore the ACBLIB keyword.
  • IMS systems where MODBLKS online change is enabled perform the MODBLKS OLC.
  • IMS systems where DRD is enabled ignore the MODBLKS keyword.
  • IMS systems where FMTLIB is enabled perform FMTLIB OLC.
  • DBCTL systems ignore the FMTLIB keyword. DBCTL IMS systems with DRD and IMS management of ACBs enabled ignore the MODBLKS, FMTLIB and ACBLIB keywords and no OLC is performed.

Usage notes

The INITIATE OLC command can be issued to an IMSplex by using the Batch SPOC utility.

If an IMSplex is running with a Resource Manager (RM) environment (RMENV=Y in the DFSCGxxx PROCLIB member), the INITIATE OLC command initiates a phase of global online change of resources and coordinates the phase with all of the IMS systems in the IMSplex. The INITIATE OLC command is similar to the command sequence /MODIFY PREPARE and /MODIFY COMMIT, except that it applies to an IMSplex-wide global online change. OM sends the INITIATE OLC command to one master IMS in the IMSplex. The command master IMS uses RM services to coordinate the online change with all participating IMS systems.

If the command master IMS in an IMSplex is running without an RM environment (RMENV=N in the DFSCGxxx PROCLIB member), the INITIATE OLC command is performed locally at the IMS to which the command was sent. The OLCSTAT data set must be unique for each IMS in the IMSplex that is running without an RM environment. The OLCSTAT data set cannot be shared between IMS systems and must be unique. If the OLCSTAT data set contains the name of an IMS other than the one processing the online change, the INITIATE OLC command is rejected. You can use the QUERY OLC command to display the contents of the OLCSTAT data set to determine which IMS member name is invalid. To correct the data set, you can use the Global Online Change utility, DFSUOLC0.

If the INITIATE OLC command is issued with a route list containing either the default Route All or multiple IMS systems that do not have RM running, the INITIATE OLC command must be issued separately to each IMS. To perform online change for IMS systems that do not have RM running, you must issue the INITIATE OLC command to each IMS. To determine which IMS systems are defined with RMENV=N in the DFSCGxxx PROCLIB member, you can issue the QUERY MEMBER SHOW(ATTRIB) command.

If some IMS systems in an IMSplex use RM services and some do not, you must ensure that the OLCSTAT data sets are properly defined to the IMS systems. The IMS systems that use RM services and global online change must share one OLCSTAT data set. Each IMS system that does not use RM services must have its own unique OLCSTAT data set.

When all of the IMS systems return the completion code of 1 (CMD NOT APPLICABLE), the online change cannot be committed as there is nothing to commit. You must issue a TERM OLC to terminate the OLC phase in progress. IMS systems remain in OLCPREPC state until the OLC is terminated.

If the INITIATE OLC PHASE(PREPARE) command is specified without an FRCABND or FRCNRML keyword and the command fails because one or more IMS systems are down or go down before the online change is committed, the online change must be aborted and started over. Issue the TERMINATE OLC command to terminate the online change.

The INITIATE OLC command master usually performs the online change phase locally first. If the online change phase fails locally, the command master usually skips sending the online change phase to the other IMS systems, sets a completion code for each other IMS indicating that the online change phase was not attempted, and terminates command processing. However, if the INITIATE OLC PHASE(COMMIT) command fails on the local IMS because of work in progress for resources that are directly affected by the online change, the command master still sends the commit phase 1 to the other IMS systems. The purpose is to report work in progress for all the IMS systems in the IMSplex, to facilitate completion of the work in progress.

In a mixed IMSplex, you might have some variations of IMS systems that support a particular type of online change and some that do not. At least one IMS in the IMSplex must successfully perform the online change phase for the command to be considered successful. If no IMS in the IMSplex supports the type of online change that the command is attempting, the command reason code indicates that none of the IMS systems performed the online change phase. If you enter an INITIATE OLC PHASE(PREPARE) command that does not apply to any IMS in the IMSplex, you must terminate the online change with a TERMINATE OLC command.

If the INITIATE OLC PHASE(COMMIT) command fails for any IMS before the OLCSTAT data set is updated, either correct the errors and try the commit again or terminate the online change with a TERMINATE OLC command. If the INITIATE OLC PHASE(COMMIT) command fails for any IMS after the OLCSTAT data set has been updated, correct the errors and try the commit again. The online change cannot be terminated.

If an IMS ends abnormally during online change and the INITIATE OLC PHASE(PREPARE) command was not specified with FRCABND, then issue the TERMINATE OLC command to terminate the online change. The INITIATE OLC PHASE(COMMIT) command is not permitted in this case. If an IMS ends abnormally during online change and the INITIATE OLC PHASE(PREPARE) command was specified with FRCABND, then the INITIATE OLC PHASE(COMMIT) command is permitted.

Type-1 and type-2 commands that come from the OM interface are rejected during the commit phase, if the command changes resources. Commands that change resources could interfere with the online change of the resources. Type-1 and type-2 commands that come from the OM interface are permitted during the commit phase, if the command displays resources such as QUERY or /DISPLAY. Type-1 commands that are entered from the system console or an IMS terminal are queued during the online change commit phase. These commands run after the online change is committed or aborted.

Each IMS participating in the global online change does not issue the same synchronous online change messages to the master terminal or system console that it does for a local online change. The OM command response contains information equivalent to the online change messages that appear for the local online change, such as the DFS3499 message contents.

Each IMS participating in the global online change might issue asynchronous online change messages to the system console, such as DFS3400, DFS3445, and DFS3498.

The INITIATE OLC PHASE(PREPARE) TYPE(ALL) command ignores the following resource definitions on IMS systems where dynamic resource definition is enabled: database directories (DDIRs), program directories (PDIRs), Fast Path routing codes (RCTEs), and scheduler message blocks (SMBs, which are also known as transactions). INITIATE OLC PHASE(PREPARE) specified with TYPE MODBLKS alone or with other keywords is rejected on the IMS systems where dynamic resource definition is enabled, but processed on the IMS systems where dynamic resource definition is not enabled. The INITIATE OLC PHASE(COMMIT) command master updates the OLCSTAT data set to switch the MODBLKS data set, even in the case where the master has dynamic resource definition enabled and the MODBLKS online change does not apply. The MODBLKS data set is switched in the OLCSTAT data set in case another IMS in the IMSplex does not have dynamic resource definition enabled. If the INITIATE OLC PHASE(PREPARE) command is specified with TYPE MODBLKS and there is only one IMS in the IMSplex and it has dynamic resource definition enabled, the command is rejected and the OLCSTAT data set is not updated.

The OM command timeout default of 300 seconds (5 minutes) might not be enough time for the online change phase to complete. You might have to specify a timeout value on the command based on the needs of the installation. To change the timeout value, use the TIMEOUT parameter of the CSLOMCMD command request or specify a Wait (timeout) value when you issue the INITIATE OLC command from TSO SPOC.

An online change of a PSB or DBD removes the member from the 31–bit pool as well as from the 64–bit pool.

If a resident program is changed, it becomes nonresident locally because its definition in the resident PSB pool is no longer valid. If its resident definition attribute was not changed, it becomes resident again at the next IMS restart. If a nonresident program is changed to be resident, the residency takes effect at the next IMS restart.

Output fields

The following table shows the output fields for an INITIATE OLC command. The columns in the table are as follows:
Short label
Contains the short label generated in the XML output.
Keyword
Identifies the keyword on the command that caused the field to be generated. N/A appears for output fields that are always returned.
Meaning
Provides a brief description of the output field.
Table 2. INITIATE OLC output field descriptions
Short label Keyword Meaning
ACBL

TYPE(ACBLIN,FMTLIB,
MODBLKS,ALL)

The current ACBLIB library suffix (if prepare succeeded or commit succeeded that did not include ACBLIB), or the new ACBLIB library suffix (if commit succeeded for ACBLIB). The ACBLIB suffix is returned if the online change prepare phase or commit phase is successful. Suffix A means that ACBLIBA is current. Suffix B means that ACBLIBB is current.
ACBS TYPE(ACBMBR) Value of an IMS system.
ADD TYPE(ACBMBR) Resource added. The ACB member is found in the staging ACBLIB and not in the active ACBLIB. The ACB member is to be added to the active ACBLIB.
CC N/A Completion code returned by IMS member that performed the global online change phase. Completion code is always returned.
CCTXT error Completion code text that briefly explains the meaning of the nonzero completion code.
CHG TYPE(ACBMBR) Resource changed. The ACB member is found in the staging ACBLIB and the active ACBLIB. The ACB member is to be changed in the active ACBLIB.
CPY TYPE(ACBMBR) Resource copied. The ACB member is found in the staging ACBLIB and not in the active ACBLIB. The ACB member does not have a PDIR for a PSB or a DDIR for a DBD in an IMS system. The ACB member is to be copied from the staging to the active ACBLIB. The ACB resource is not available until a PDIR for a PSB or a DDIR for a DBD is created.
DBD TYPE(ACBMBR) DBD resource name
ERRT N/A Error text returned by IMS member that failed performing the global online change phase. Error text might be returned if the completion code is nonzero.
FMTL

TYPE(ACBLIN,FMTLIB,
MODBLKS,ALL)

The current FMTLIB library suffix (if prepare succeeded or commit succeeded that did not include FMTLIB), or the new FMTLIB library suffix (if commit succeeded for FMTLIB). The FMTLIB suffix is returned if the online change prepare phase or commit phase is successful. Suffix A means that FMTLIBA is current. Suffix B means that FMTLIBB is current.
IMSMBR N/A IMS member that performed the global online change phase. The IMS member name is always returned.
MBR N/A IMSplex member that built the line of output. IMS identifier of the IMS that is the master of this online change phase. IMS identifier is always returned.
MODB

TYPE(ACBLIN,FMTLIB,
MODBLKS,ALL)

The current MODBLKS library suffix (if prepare succeeded or commit succeeded that did not include MODBLKS), or the new MODBLKS library suffix (if commit succeeded for MODBLKS). The MODBLKS suffix is returned if the online change prepare phase or commit phase is successful.

Suffix A means that MODBLKSA is current. Suffix B means that MODBLKSB is current.

MODI

TYPE(ACBLIN,FMTLIB,
MODBLKS,ALL)

The current modify ID (if prepare succeeded), or new modify ID (if commit succeeded). The modify ID - 1 indicates the number of global online changes that have been performed. The modify ID is returned if the online change prepare phase or commit phase is successful.
PSB TYPE(ACBMBR) PSB resource name
RSC TYPE(ACBSHR) Resource type is not known.
RFS TYPE(ACBSHR) Resource is refreshed in the active ACBLIB.

Return, reason, and completion codes

Two sets of return and reason codes are returned when a command is issued through the OM API. One set of codes is for the OM request and the other set of codes is for the command itself. The OM request return and reason codes that can be returned as a result of the INITIATE OLC command are standard for all commands entered through the OM API.

The return and reason codes returned by the INITIATE OLC command are passed from the OM API on to the SPOC application. These codes are encapsulated in XML tags similar to how the response to the command is encapsulated in XML tags. The IBM-supplied TSO SPOC displays these codes, whereas a user-written SPOC application might choose not to display these codes.

Some reason codes are accompanied by a complete list of IMS systems and return codes. The reason code meaning indicates whether a list is returned. A partial list of IMS systems and return codes might be returned with anyINITIATE OLC error reason code, if any output was built before the error was detected.

The following table includes the return and reason codes and a brief explanation of the codes. The return or reason code returned for the command might also indicate an error from a CSL request.

Table 3. Return and reason codes for INITIATE OLC
Return code Reason code Meaning
X'00000000' X'00000000' The INITIATE OLC command completed successfully. The INITIATE OLC command applies to all of the IMS systems listed in the OLCSTAT data set. Each IMS listed in the OLCSTAT data set is current with the online change libraries and required to participate in the online change. The FRCABND option was not specified. The FRCNRML option was not specified, either.

If the INITIATE OLC PHASE(PREPARE) command was specified, all of the IMS systems listed in the OLCSTAT data set are now in an online change prepare state.

If the INITIATE OLC PHASE(COMMIT) command was specified, all of the IMS systems listed in the OLCSTAT data set successfully committed the online change.

An output line is built for each IMS listed in the OLCSTAT data set. Each output line contains the IMS member name and a completion code of zero.

X'00000004' X'0000100C' The command completed successfully, but was not applicable to one or more IMS systems for acceptable reasons. The INITIATE OLC command applies to all of the IMS systems listed in the OLCSTAT data set. Each IMS listed in the OLCSTAT data set is current with the online change libraries and required to participate in the online change (unless FRCABND or FRCNRML is specified).

An output line is built for each IMS listed in the OLCSTAT data set. Each output line contains the IMS member name and a completion code. A nonzero completion code might be accompanied by error text. One or more of the IMS systems contain a completion code indicating that the online change phase did not apply to this IMS, such as the IMS state is shutdown and FRCSHUT was specified, the IMS state is abended and FRCABND was specified, the online change type does not apply to this IMS, or this IMS is already in the correct online change state. The INITIATE OLC completion code table contains the list of completion codes and error text that can be returned by the INITIATE OLC command.

X'00000004' X'0000100D' The specified online change type is not applicable to all the IMS systems in the OLCSTAT. Because the online change cannot be committed, use the TERMINATE OLC command to terminate the online change in progress. This error return and reason code combination is returned in the following situations:
  • If a MODBLKS type of online change process is attempted in an IMSplex where all IMS systems are DRD enabled
  • If an FMTLIB type of online change process is attempted in an IMSplex where all IMS systems are configured as DBCTL systems
X'00000008' X'00002040' The INITIATE OLC command is rejected because of an invalid filter. The INITIATE OLC PHASE(PREPARE) OPTION(BLDL) command can be specified only with TYPE(ACBLIB) or TYPE(ALL). The INITIATE OLC PHASE(COMMIT) command does not support TYPE or OPTION.
X'00000008' X'00004300' The command is not allowed, because online change for the MODBLKS data set is disabled (DFSDFxxx or DFSCGxxx is defined with MODBLKS=DYN). Dynamic resource definition is enabled.
X'0000000C' X'00003000' The INITIATE OLC command is successful for at least one IMS but not all IMS systems. The INITIATE OLC command applies to all of the IMS systems listed in the OLCSTAT data set. Each IMS listed in the OLCSTAT data set is current with the online change libraries and required to participate in the online change (unless FRCABND or FRCNRML is specified).

An output line is built for each IMS listed in the OLCSTAT data set. Each output line contains the IMS member name and a completion code. A nonzero completion code might be accompanied by error text. One or more of the IMS systems returned an error completion code. The INITIATE OLC completion code table contains the list of completion codes and error text that can be returned by the INITIATE OLC command.

If INITIATE OLC PHASE(PREPARE) fails, the online change must be aborted and started over.

If INITIATE OLC PHASE(COMMIT) fails and you want to try the commit again, correct the problem, and issue the INITIATE OLC PHASE(COMMIT) command again.

To abort the online change, issue the TERMINATE OLC command. If the INITIATE OLC PHASE(PREPARE) command failed or the INITIATE OLC PHASE(COMMIT) command failed before the commit master updated the OLCSTAT data set, the online change is aborted.

See 'INITIATE OLC error handling' for more details.

X'0000000C' X'00003004' The INITIATE OLC command failed for all of the IMS systems. The INITIATE OLC command applies to all of the IMS systems listed in the OLCSTAT data set. Each IMS listed in the OLCSTAT data set is current with the online change libraries and required to participate in the online change (unless FRCABND or FRCNRML is specified).

An output line is built for each IMS listed in the OLCSTAT data set. Each output line contains the IMS member name and a completion code. A nonzero completion code might be accompanied by error text. The INITIATE OLC completion code table contains the list of completion codes and error text that can be returned by the INITIATE OLC command.

If INITIATE OLC PHASE(PREPARE) fails for all of the IMS systems listed in the OLCSTAT data set, no IMS is in an online change state. You can try the online change again with another INITIATE OLC PHASE(PREPARE) command.

If INITIATE OLC PHASE(COMMIT) fails and you want to try the commit again, correct the problem, and then issue the INITIATE OLC PHASE(COMMIT) command again.

To terminate the online change, issue the TERMINATE OLC command. If the INITIATE OLC PHASE(PREPARE) command failed or the INITIATE OLC PHASE(COMMIT) command failed before the commit master updated the OLCSTAT data set, the online change is terminated.

For more details, see INITIATE OLC error handling.

X'00000010' X'00004004' The INITIATE OLC command failed because there is no CQS. RM attempted to access the process resource on the resource structure, but it failed because CQS is not available. The online change phase might have succeeded on one or more IMS systems.

For more details, see INITIATE OLC error handling.

X'00000010' X'0000400C' The INITIATE OLC command failed because it is invalid for an XRF alternate.
X'00000010' X'0000401C' The INITIATE OLC command failed because it is invalid for an FDBR region.
X'00000010' X'00004018' The INITIATE OLC command failed because the RM resource structure is not available. The online change phase might have succeeded on one or more IMS systems.

For more details, see INITIATE OLC error handling.

X'00000010' X'00004100' The INITIATE OLC PHASE(PREPARE) command is rejected because the resource structure is full. RM failed trying to create the process resource on the resource structure.
X'00000010' X'00004104' The INITIATE OLC command failed because RM is not available. The online change phase might have succeeded on one or more IMS systems. Either there is no RM address space, or RM is active but not registered to SCI because CQS or the resource structure is not available.

For more details, see INITIATE OLC error handling.

X'00000010' X'00004108' The INITIATE OLC command failed because SCI is not available. The online change phase might have succeeded on one or more IMS systems.

For more details, see INITIATE OLC error handling.

X'00000010' X'0000410C' The INITIATE OLC command is rejected, because global online change is not enabled. Local online change is enabled. Use the /MODIFY command for local online change. If your IMSplex is made up of some IMS systems that support global online change and some that support local online change, route the INITIATE OLC command to an IMS that is enabled for global online change.
X'00000010' X'0000410D' Online change prepare has already been done. Another prepare command is not allowed. The only commands that are allowed when IMS is in this state are INITIATE OLC PHASE(COMMIT) or TERMINATE OLC.
X'00000010' X'0000410E' Online change prepare has not been done. An online change prepare command must complete successfully before a commit command is attempted.
X'00000010' X'0000410F' The online change has already been committed, so it cannot be terminated. However, an error occurred that prevented the commitment from being fully completed. For example, one of the IMS systems that participates in the online change was unable to complete commit phase 2 or commit phase 3, or an IMS response to RM timed out and the commit master could not determine whether the online change commit succeeded on the other IMS systems. Another commit command is required to complete the online change commitment.
X'00000010' X'00004110' The INITIATE OLC command is rejected, because the command does not apply to the online change state of the command master.

INITIATE OLC PHASE(COMMIT) is rejected if the command master is not in an online change prepare state.

INITIATE OLC PHASE(COMMIT) is rejected if routed to an IMS that already successfully completed commit phase 3.

INITIATE OLC PHASE(PREPARE) is rejected if the command master is already in an online change prepare state.

For more details, see INITIATE OLC error handling.

X'00000010' X'00004111' The INITIATE OLC command failed because the command master is not in the OLCSTAT data set.
X'00000010' X'00004112' The PREPARE command cannot be processed, because the OLCSTAT is locked.
X'00000010' X'00004114' The INITIATE OLC command failed because of an error accessing the OLCSTAT data set. The online change phase might have succeeded on one or more IMS systems.

A DFS2843 message is sent to the OM output exit as unsolicited output.

For more details, see INITIATE OLC error handling.

X'00000010' X'00004118' The INITIATE OLC command failed because of an error allocating the OLCSTAT data set. The online change phase might have succeeded on one or more IMS systems.

A DFS2848 message is sent to the OM output exit as unsolicited output.

For more details, see INITIATE OLC error handling.

X'00000010' X'0000411C' The INITIATE OLC command failed because of an error in the OLCSTAT data set contents. One or more of the values is invalid.

A DFS2844 message is sent to the OM output exit as unsolicited output.

X'00000010' X'00004120' The INITIATE OLC command is rejected because an online change command is already in progress on this IMS. The command in progress might be INITIATE OLC, TERMINATE OLC, or /DISPLAY MODIFY.
X'00000010' X'00004124' The INITIATE OLC PHASE(PREPARE) command is rejected, because another process of the same type is already in progress. Processes include another OLC command or a DRD command such as CREATE DB or DELETE DB for a DEDB. Wait until the other process has completed.
X'00000010' X'0000412C' The OLCSTAT data set contains the name of an IMS other than the IMS processing the online change. Use DFSUOLC0 to correct the data set.
X'00000010' X'00004303' At least one IMS in the OLCSTAT is at a lower level than required for the TYPE(ACBMBR) online change.
X'00000010' X'00004304' Data set version is invalid. The OLCSTAT is initialized to an invalid version for the type of online change requested. For example, version 1 is invalid for TYPE(ACBMBR) member online change. Or, the data set is initialized to version 2 and one or more IMS systems are lower than IMS Version 10.
X'00000010' X'00004305' IMS version mismatch. There is a mismatch between the version of the IMS in the OLCSTAT and the actual version of IMS that is currently running. The actual version of IMS is returned from the CSLSCQRY request. The OLCSTAT must be reinitialized so that the IMS is at the correct version.
X'00000010' X'0000501C' The INITIATE OLC command is rejected because an IMODULE GETMAIN storage request failed.
X'00000014' X'00005000' The INITIATE OLC command is rejected because an IMODULE GETSTOR storage request failed.
X'00000014' X'00005004' The INITIATE OLC command failed because a DFSOCMD response buffer could not be obtained. The online change phase might have succeeded on one or more IMS systems.

For more details, see INITIATE OLC error handling.

X'00000014' X'0000500C' The INITIATE OLC command failed because an AWE could not be obtained.
X'00000014' X'00005100' The INITIATE OLC command failed because of an RM error. The online change phase might have succeeded on one or more IMS systems. The RM error might be caused by a resource structure failure that causes RM to lose knowledge of an IMSplex-wide process.

For more details, see INITIATE OLC error handling.

X'00000014' X'00005104' The INITIATE OLC command failed because of a CQS error. The online change phase might have succeeded on one or more IMS systems.

For more details, see INITIATE OLC error handling.

X'00000014' X'00005108' The INITIATE OLC command failed because of an SCI error. The online change phase might have succeeded on one or more IMS systems.

For more details, see INITIATE OLC error handling.

X'00000014' X'0000510C' Another RM process step is in progress. If this reason code is returned after the previous COMMIT command timed out, try the COMMIT command again.
X'00000014' X'00005FFF' The INITIATE OLC command failed because of an internal IMS error. The online change phase might have succeeded on one or more IMS systems.

For more details, see INITIATE OLC error handling.

The INITIATE command (with the OLC keyword) can result in errors that leave one or more of the IMS systems in the IMSplex in various online change states. The following table contains the possible completion codes that can be returned as a result of issuing an INITIATE OLC command. The table also includes a brief explanation of the code and provides the error text if applicable.

Table 4. Completion codes for the INITIATE OLC command
Completion code Meaning ERROR TEXT (uppercase)
0 The online change prepare phase or commit phase completed successfully.  
1 The online change type does not apply to this IMS. For example, an FMTLIB online change does not apply to a DBCTL IMS. This IMS keeps status indicating that it is participating in the online change. This IMS is included in the OLCSTAT data set IMS list after a successful commit phase 1. For another example, a MODBLKS online change does not apply to an IMS where dynamic resource definition is enabled (DFSDFxxx or DFSCGxxx is defined with MODBLKS=DYN).  
2 The online change phase was not attempted by this IMS for one of the following reasons:
  • The online change phase master encountered an error and did not direct this IMS to perform the online change phase.
  • The online change phase master rejected the online change because one or more IMS systems are down and the FRCNRML or FRCABND keyword was not specified on the INITIATE OLC PHASE(PREPARE) command. The online change phase master did not direct this IMS to perform the online change phase.
 
3 This IMS is already in the correct online change state. The INITIATE OLC command must have been tried again after a previous INITIATE OLC command resulted in a mix of successes and failures. This IMS keeps status indicating that it is participating in the online change. This IMS is included in the OLCSTAT data set IMS list after a successful commit phase 1.  
4 The online change commit phase is incomplete on this IMS. One or more online change commit phases have been completed on this IMS. All online change commit phases were not sent to this IMS due to errors.  
5 The ACBMBR OLC is complete; however, during COMMIT processing after the OLCSTAT was updated, an error was encountered and one or more members that have been added or changed with the ACBMBR OLC are unusable. Any programs that are not usable are marked bad with a reason code of MOLCCOMMIT. Any databases that are not usable are marked bad with a reason code of MOLCFAIL. OLC COMPLETE, SOME MBRS UNUSABLE
1D The OLC directive cannot be processed, because a takeover is in progress. XRF TAKEOVER IS IN PROGRESS
57 The queue structure is unavailable. IMS is unable to check if there is a global queue count for transactions to be added, changed, or deleted. Commit is not permitted to proceed. The structure might be unavailable for one of the following reasons:
  • CQS is unavailable
  • The MSGQ structure failed and it has not been rebuilt yet
  • CQS lost connectivity to the MSGQ structure
THE QUEUE STRUCTURE IS UNAVAILABLE.
58

An IMS is not registered to RM. An OLCSTAT data set contains an IMS that is not registered to RM. The INITIATE command fails for that IMS.

If the INITIATE OLC PHASE(PREPARE) command is issued to an IMS that is registered to RM and the OLCSTAT data set contains an IMS system that is not registered to RM, the command fails. The unregistered IMS command-line response is cc=58. To initiate online change, you must remove the unregistered IMS from the OLCSTAT data set. To remove the IMS, perform the following steps:
  1. Issue QRY MEMBER TYPE(IMS) SHOW(ATRIB) or SHOW(ALL) to verify the IMS that received the cc=58 was initialized with RMENV=N.
  2. Unlock the OLCSTAT data set using the DFSUOLC0 utility. When online change is in progress it is necessary for the utility to delete the invalid member name.
  3. Delete the invalid IMSID from the OLCSTAT data set using the DFSUOLC0 utility.
  4. Issue TERM OLC to terminate the OLC with the valid IMS systems.
  5. Reissue the OLC.
 
60 IMODULE GETMAIN storage error.  
61 DFSBCB storage error.
INTERNALBLOCK NOT BUILD
IMS was unable to get the CSA storage that is required to build the DBRC work area.
62 HIOP storage error.  
63 WKAP storage error.  
64 GETSTOR storage error,
INTERNALBLOCK NOT BUILD
IMS was unable to get the CSA storage that is required to build an internal block that holds a list of altered HALDB master databases.
70 Module load error. Module name (8 characters), module type (8 characters).

The module type can be 'SECURITY'.

71 Module locate error. Module name (8 characters), module type (8 characters).

The module type can be 'SECURITY'.

72 Randomizer load error. FP area randomizer name (8 characters).
80 Data set error. Function (8 characters), ddname (8 characters), return code (8 bytes), and error detail (8 characters).
Function can be one of the following:
BLDL
Data set BLDL error.
BUSY
The data set is busy. The detail contains the job name that has the data set.
DIR
Data set directory error.
DIRSIZE ddname nn mbrname
Where:
ddname
The 7-character FMTLIB DD name, which is either FORMATA or FORMATB.
nn
The 2-byte FMTLIB data set concatenation number within the FMTLIB DD statement.
mbrname
The 8-character invalid member name in the FMTLIB data set.
For example, if a module is erroneously copied into the inactive FMTLIB before the INITIATE OLC PHASE(COMMIT) command is issued, the INITIATE OLC PHASE(COMMIT) command might fail with this error. If the member is an actual MFS format with an invalid directory size, the first two characters of the format name are unprintable hexadecimal values that might appear as blanks or other non-alphanumeric characters in this output. The first two characters of the format name might appear as different non-alphanumeric characters when browsing the FMTLIB with TSO.
EMPTY
Library is empty.
ENQUEUE
Data set enqueue error.
EOF
Data set end-of-file (EOF) error.
OPEN
Data set open error. Error detail can be 'DLS REG'.
READ
Data set read error.
WRITE
Data set write error.

DDname can be ACBLIBA, ACBLIBB, FMTLIBA, FMTLIBB, MODBLKSA, MODBLKSB, or MODSTAT.

Return code is the data set service return code.

Reason code is the data set service reason code.

90 Internal error Module name that detected internal error (8 characters), unused (8 characters), return code or function code (8 bytes), and error detail (8 characters).
91 The online change prepare phase, commit phase, or abort phase timed out before this IMS responded to the online change prepare or commit phase. The online change prepare phase or commit phase might have succeeded on this IMS. Issue QUERY MEMBER TYPE(IMS) to determine the online change state of this IMS.  
B0 Resource definition error. Resource type (8 characters), resource name (8 characters), error detail (16 characters).

The resource type can be AREA, DB, DMB, PSB, SECURITY, or SMB.

The resource name can be a resource name, ACBLIB or MODBLKS.

The error detail can be one of the following:

CISIZE ERROR
An attempt to add the area name to the DEDB failed. The CI size of the area exceeds the Fast Path buffer size (BSIZ=) of the IMS online control region.
CPCTRAN CONFLICT
The online change command attempted to add a transaction name that conflicts with a CPIC transaction name. Tranname specifies the transaction that exists as a CPIC transaction.
DESC CONFLICT
The online change command attempted to add a transaction name that conflicts with a descriptor name. Tranname specifies the transaction that exists as a descriptor name.
DUPLICATE
A duplicate area name was found in the named DEDB DBD defined in the IMS system. The area name, that was defined in the DD1 operand on one of the AREA statements in the DBDGEN, is defined in another DEDB DBDGEN or is defined within the DEDB DBDGEN.
INCOMPATIBLE
The DMB in the inactive ACBLIB is not compatible with IMS. The level of the inactive library is not compatible with the current IMS release.
PDIR NAME
The online change attempted to change the program name of the transaction, but the program does not exist, nor is it being added by online change. The program name for a local transaction must exist or be added with the same online change.
B0 Resource definition error (continued).
INCONSISTENT
IMS detected an inconsistency between the indicated security module and the definition of the new blocks in the inactive MODBLKS data set. Either the security option was requested on the online change command or the prevailing security option is YES or FORCE. In the module name, nnnns is the specific table name, where s is the suffix.
LTERM CONFLICT
The online change command attempted to add a transaction name that conflicts with a dynamic lterm name.

Tranname specifies the transaction that exists as a dynamically created LTERM. The error detail can be one of the following (continued):

MSNAME CONFLICT
The online change command attempted to add a transaction name that conflicts with an MSNAME. Tranname specifies the transaction that exists as an MSNAME.
NOT DEFINED
Control block was not defined in the active library during the online prepare phase. This is an internal error that should not occur.
NO BLOCKS
Control blocks were missing from the inactive library during the online prepare phase.
B0 Resource definition error (continued).
NO FP INSTALLED
An attempt was made to add a data entry database (DEDB) to an IMS system that does not have Fast Path installed.
NO OTHREADS
An attempt was made to add a data entry database (DEDB) to an IMS system that was not initialized with DEDBs. No output threads (OTHREADS) were initialized and no I/O will be possible to the added DEDB.
PARTITION EXISTS
A database partition by that name exists.
RSRC CONFLICT
The online change command is attempting to add a transaction name that conflicts with another message destination resource in the Resource Manager (RM). The resource can be an LTERM, CPIC transaction, MSNAME, or descriptor. Tranname specifies the transaction that exists as another resource type.
UNSUPPORTED MSDB
The online change attempted to add an MSDB or change a DEDB to an MSDB, which is not permitted.
B1   Resource type (8 characters), resource name (8 characters), error detail (16 characters).

The resource name is the name of the resource as it is defined to IMS, such as the database name, the program name, or the transaction name.

The resource type can be DATABASE, DMB, FORMAT, PROGRAM, PSB, RTCODE, or TRAN.

B1 Resource state error.

The online change phase failed on this IMS because of the state of the specified resource.

Many of the resource states indicate work is in progress for resources to be changed or deleted by online change. Online change commit detected a resource in a state that results in commit failure. This is the first resource for which an error is detected. IMS is returned to an online change prepare state. Issue a /DISPLAY MODIFY command to display the work in progress for resources to be changed or deleted by online change. Resolve the work in progress, then attempt the INITIATE OLC PHASE(COMMIT) command again.

The error detail can be one of the following:
ACTIVE
The routing code rtcode is active.
AREA OPEN
An area associated with the FP DEDB is open.
AREA STARTED
An area associated with the FP DEDB is started.
CONVERSATION
The transaction to be changed or deleted or the transaction referencing a program or database to be changed or deleted is in conversation.
DATABASE dbname ALTER INCOMPLETE
Alter processing is not complete for a HALDB database. After alter processing completes, retry the INITIATE OLC command.
DATABASE dbname STG TOO SMALL
The OLC function cannot process the altered DDIR because there is not enough internal block storage.
The lack of storage could be caused by the start of another HALDB alter operation after OLC reaches the commit phase.
Retry the INITIATE OLC PHASE(COMMIT) command.

Error details continued in next row.

B1 Resource state error (continued).
DBD ACTIVE
A /DBDUMP command is active for the database.
DBR ACTIVE
A /DBRECOVERY command is active for the database.
DBR NEEDED
A /DBRECOVERY command is needed for the database resource. Online change was initiated to either change or delete one or more HALDB databases which have not been taken offline with a /DBR command.

If the IMS catalog is enabled with an alias other than DFSC (the standard alias prefix), and the catalog databases have been modified with online change, issue the DBR DB command for the databases IMS1D000 and IMS1X000 instead of DFSCD000 and DFSCX000.

DEP REGS ACTIVE
Dependent regions using the FP DEDB are active.

Error details continued in next row.

B1 Resource state error (continued). Error detail (continued):
DYNAMIC OR CPIC
The transaction being added exists and is not dynamic or CPIC. This is an internal error that should not occur.
ELIGIBLE SCHD
The named transaction is eligible for scheduling and cannot be deleted by online change. Stop the transaction before attempting another online change commit.
INTERNAL ERROR
The resource control block is not found in the active IMS, or the resource control block exists. These are internal errors that should not occur.
IN USE
The resource is in use.

A transaction has queuing in progress (either terminal input program-to-program switch).

A database is in use.

PSB SCHEDULED
A program referencing a database to be changed or deleted is scheduled.
QUEUEING
Messages are queued to the transaction or program.
SCHEDULED
The named resource (a transaction or program to be changed or deleted, or a program referencing a database to be changed or deleted) is scheduled.
SUSPENDED
The transaction to be changed or deleted is on the suspend queue.
B2 IMS state error. IMS state error (32 characters). The IMS state can be one of the following:
ABENDED
This IMS ended abnormally since the last successful online change. Online change is not permitted if any IMS ended abnormally since the last online change, unless the FRCABND option is specified on prepare. If the online change phase was rejected, issue TERMINATE OLC to abort the online change, correct the problem, and try the online change again. If an online change specified with the FRCABND option succeeds, this IMS might have to cold start.
CHECKPOINT IN PROGRESS
This IMS has checkpoint in progress.
NOT-REACHABLE
The online change phase is rejected because this IMS is NOT-REACHABLE. The SCI on the OS image where this IMS is active is down. Restart the SCI and reissue the INITIATE OLC or TERMINATE OLC command.
OLC ALREADY COMMITTED
The online change phase is rejected because online change is already committed. All IMS systems have completed commit phase 1 and the OLCSTAT data set was updated.
OLC NOT IN PROGRESS
The online change phase is rejected because this IMS is not in an online change state.
B2 IMS state error (continued). IMS state error (32 characters). The IMS state can be one of the following:
OLC PHASE IN PROGRESS
The online change phase is rejected because this IMS has an online change phase already in progress.
RECOVERY IN PROGRESS
The online change command is rejected because the online recovery service is already in progress.
RESOLVE DB INDOUBTS
This IMS has DB indoubts. You must resolve the DB indoubts either by reconnecting the coordinator controller and IMS or by using an operator command.
RESTART IN PROGRESS
This IMS has restart in progress.
RESTART NOT COMPLETE
This IMS initialized before the online change was initiated, but has not completed restart. The online prepare or abort phase is rejected as long as this IMS is in this state. Cancel this IMS, then abort the online change before attempting the online change prepare phase again.
SHUTDOWN
This IMS was shut down normally since the last successful online change. Online change is not permitted if any IMS was shut down normally since the last online change, unless the FRCNRML option is specified on prepare. If the online change phase was rejected, issue TERMINATE OLC to terminate the online change, correct the problem, and try the online change again. If an online change specified with the FRCNRML option succeeds, this IMS might have to cold start.
120 The INIT OLC TYPE(ACBMBR) online change failed. Staging ACBLIB is empty.
121 The INIT OLC TYPE(ACBMBR) online change failed. Resource in command has no change.
122 The INIT OLC TYPE(ACBMBR) online change failed. Not all PSBs are rebuilt for this DMB.
123 The INIT OLC TYPE(ACBMBR) online change failed. Staging library level is not compatible with the current IMS.
124 The INIT OLC TYPE(ACBMBR) online change failed. DOPT PSB will not be copied to the active ACBLIB.
125 The INIT OLC TYPE(ACBMBR) online change failed. No PSB is rebuilt for this change DMB.
126 The INIT OLC TYPE(ACBMBR) online change failed. The previous member OLC failed in the commit phase 1 processing. The terminate OLC command must be entered to terminate the pending member OLC.
127 The INIT OLC TYPE(ACBMBR) online change failed. COMMIT MEMBER failure.
128 The INIT OLC TYPE(ACBMBR) online change failed. REFRESH MBR failure.
129 The INIT OLC TYPE(ACBMBR) online change failed. Mismatch in ACBSHR= values among IMS systems in the OLCSTAT.
12A Existing DBDs in the active ACB library cannot be modified. NAMEONLY DBD CHANGES NOT ALLOWED
12B The PSB that is specified in the command includes references to the existing DBDs that have been changed in the staging ACB library. The INIT OLC command failed because existing DBDs in the active ACB library cannot be modified. NAMEONLY PSB CONTAINS CHANGED DB
12C The DBD that is specified in the command includes references to the existing DBDs that have been changed in the staging ACB library. The INIT OLC command failed because existing DBDs in the active ACB library cannot be modified. NAMEONLY DBD HAS CHNG LOGICAL DB
12D The online change prepare phase failed. The catalog PSB DFSCP000 cannot be deleted from the online system while the catalog is enabled. To allow the online change prepare phase to proceed, perform an ACBGEN of the staging ACBLIB with BUILD PSB=DFSCP000. DELETING CATALOG PSB NOT ALLOWED
12E The online change prepare phase failed. The catalog DBD DFSCD000 or DFSCX000 cannot be deleted from the online system while the catalog is enabled. In order for the online change prepare phase to proceed, perform and ACBGEN with BUILD PSB=DFSCP000 to the staging ACBLIB. DELETING CATALOG DBD NOT ALLOWED
130 The INIT OLC TYPE(ACBMBR) online change failed. Allocation of staging ACBLIB failed.
131 The INIT OLC TYPE(ACBMBR) online change failed. Allocation of active ACBLIB failed.
132 The INIT OLC TYPE(ACBMBR) online change failed. Open of staging ACBLIB failed.
133 The INIT OLC TYPE(ACBMBR) online change failed. IO error of active ACBLIB.
134 The INIT OLC TYPE(ACBMBR) online change failed. Open of active ACBLIB failed.
135 The INIT OLC TYPE(ACBMBR) online change failed. IO error of staging ACBLIB.
136 The INIT OLC TYPE(ACBMBR) online change failed because there were more than the maximum supported concatenations for the active ACB library.  
138 The INIT OLC TYPE(ACBMBR) OPTION(BLDPSBNO) online change failed because the specified DBD has a structural update. AREA HAS STRUCTURAL CHANGE
14B IMS is being shut down. The ACBMBR online change prepare command is terminated. SHUTDOWN
180 During an INIT OLC PHASE(PREPARE) command processing, the load of the DFSMDA member for the inactive ACBLIB failed. Message DFS0887A is issued on the system console. DATASET ERROR MDA LOAD
181 During an INIT OLC PHASE(PREPARE) command processing, the allocation of the inactive ACBLIB failed. Message DFS2500W is issued on the system console. DATASET ERROR ALLOCATE

Examples

The following are examples of the INITIATE OLC command.

Example 1 for INITIATE OLC command

TSO SPOC input:
INITIATE OLC PHASE(PREPARE) TYPE(MODBLKS,ACBLIB)
TSO SPOC output:
MbrName  Member     CC ACBLIB FMTLIB MODBLKS    ModId
IMS3     IMS2        0                                         
IMS3     IMS3        0      B      A       B        1          
IMS3     SYS3        0  
OM API input:
CMD (INITIATE OLC PHASE(PREPARE) TYPE(MODBLKS,ACBLIB))
OM API output:
<imsout>
<ctl>
<omname>OM1OM   </omname>
<omvsn>1.1.0</omvsn>
<xmlvsn>1   </xmlvsn>
<statime>2003.163 15:40:53.336327</statime>
<stotime>2003.163 15:41:08.282146</stotime>
<staseq>B7C4AC11FED070C6</staseq>
<stoseq>B7C4AC203FB220C1</stoseq>
<rqsttkn1>USRT011 10084053</rqsttkn1>
<rc>0200000C</rc>
<rsn>00003000</rsn>
</ctl>
<cmderr>
<mbr name="IMS2    ">
<typ>IMS     </typ>
<styp>DBDC  </styp>
<rc>02000004</rc>
<rsn>00001008</rsn>
</mbr>
<mbr name="SYS3    ">
<typ>IMS     </typ>
<styp>DBDC   </styp>
<rc>02000004</rc>
<rsn>00001008</rsn>
</mbr>
</cmderr>
<cmd>
<master>IMS3    </master>
<userid>USRT011 </userid>
<verb>INIT</verb>
<kwd>OLC            </kwd>
<input>INITIATE OLC PHASE(PREPARE) TYPE(MODBLKS,ACBLIB)</input>
</cmd>
<cmdrsphdr>
<hdr slbl="MBR"    llbl="MbrName" scope="LCL" sort="n" key="0" scroll="yes" len="8"
 dtype="CHAR" align="left" />
<hdr slbl="IMSMBR" llbl="Member"  scope="LCL" sort="a" key="1" scroll="no"  len="8"
 dtype="CHAR" align="left" />
<hdr slbl="CC"     llbl="CC"      scope="LCL" sort="n" key="0" scroll="yes" len="4"
 dtype="INT"  align="right" />
<hdr slbl="ACBL"   llbl="ACBLIB"  scope="GBL" sort="n" key="0" scroll="yes" len="1"
 dtype="CHAR" align="right" />
<hdr slbl="FMTL"   llbl="FMTLIB"  scope="GBL" sort="n" key="0" scroll="yes" len="1"
 dtype="CHAR" align="right" />
<hdr slbl="MODB"   llbl="MODBLKS" scope="GBL" sort="n" key="0" scroll="yes" len="1"
 dtype="CHAR" align="right"/>
<hdr slbl="MODI"   llbl="ModId"   scope="GBL" sort="n" key="0" scroll="yes" len="8"
 dtype="CHAR" align="right"/>
</cmdrsphdr>
<cmdrspdata>
<rsp>MBR(IMS3    ) IMSMBR(SYS3    ) CC(   0) </rsp>
<rsp>MBR(IMS3    ) IMSMBR(IMS2    ) CC(   0) </rsp>
<rsp>MBR(IMS3    ) IMSMBR(IMS3    ) CC(   0) ACBL(B) FMTL(A) MODB(B) MODI(    1)
</rsp>
</cmdrspdata>
</imsout>

Explanation: The IMSplex consists of three IMS systems: SYS3, IMS2, and IMS3. All three of the IMS systems complete the online change prepare phase successfully for the MODBLKS library. IMS3 is the master of the prepare phase. The current online change libraries are ACBLIBB, FMTLIBA, and MODBLKSB. The current modify ID is 1.

Example 2 for INITIATE OLC command

TSO SPOC input:
INITIATE OLC PHASE(COMMIT)
TSO SPOC output:
MbrName  Member     CC ACBLIB FMTLIB MODBLKS    ModId 
IMS3     IMS2        0                                
IMS3     IMS3        0      B      A       A        2 
IMS3     SYS3        0                               
OM API input:
CMD (INITIATE OLC PHASE(COMMIT))
OM API output:
<imsout>
<ctl>
<omname>OM1OM   </omname>
<omvsn>1.1.0</omvsn>
<xmlvsn>1   </xmlvsn>
<statime>2002.163 16:26:14.660563</statime>
<stotime>2002.16316:26:22.293891</stotime>
<staseq>B7C4B635409D30C6</staseq>
<stoseq>B7C4B63C88383347</stoseq>
<rqsttkn1>USRT011 10092614</rqsttkn1>
<rc>0200000C</rc>
<rsn>00003000</rsn>
</ctl> 
<cmderr>
<mbr name="IMS2    ">
<typ>IMS     </typ>
<styp>DBDC   </styp>
<rc>02000004</rc>
<rsn>00001008</rsn>
</mbr>
<mbr name="SYS3    ">
<typ>IMS     </typ>
<styp>DBDC    </styp>
<rc>02000004</rc>
<rsn>00001008</rsn>
</mbr>
</cmderr>
<cmd>
<master>IMS3    </master>
<userid>USRT011 </userid>
<verb>INIT</verb>
<kwd>OLC            </kwd>
<input>INITIATE OLC PHASE(COMMIT) </input>
</cmd>
<cmdrsphdr>
<hdr slbl="MBR"    llbl="MbrName" scope="LCL" sort="n" key="0" scroll="yes" len="8"
 dtype="CHAR" align="left" />
<hdr slbl="IMSMBR" llbl="Member"  scope="LCL" sort="a" key="1" scroll="no"  len="8"
 dtype="CHAR" align="left" />
<hdr slbl="CC"     llbl="CC"      scope="LCL" sort="n" key="0" scroll="yes" len="4"
 dtype="INT"  align="right" />
<hdr slbl="ACBL"   llbl="ACBLIB"  scope="GBL" sort="n" key="0" scroll="yes" len="1"
 dtype="CHAR" align="right" />
<hdr slbl="FMTL"   llbl="FMTLIB"  scope="GBL" sort="n" key="0" scroll="yes" len="1"
 dtype="CHAR" align="right" />
<hdr slbl="MODB"   llbl="MODBLKS" scope="GBL" sort="n" key="0" scroll="yes" len="1"
 dtype="CHAR" align="right"/>
<hdr slbl="MODI"   llbl="ModId"   scope="GBL" sort="n" key="0" scroll="yes" len="8"
 dtype="CHAR" align="right" />
</cmdrsphdr>
<cmdrspdata>
<rsp>MBR(IMS3    ) IMSMBR(SYS3    ) CC(   0) </rsp>
<rsp>MBR(IMS3    ) IMSMBR(IMS2    ) CC(   0) </rsp>
<rsp>MBR(IMS3    ) IMSMBR(IMS3    ) CC(   0) ACBL(B) FMTL(A) MODB(A) MODI(      2)
</rsp>
</cmdrspdata>
</imsout>

Explanation: A global online change commit is initiated and completes successfully.

Example 3 for INITIATE OLC command

TSO SPOC input:
INITIATE OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(OLCDB105 OLCDX111)  
TSO SPOC output:
MbrName  Member     CC ACBSHR DBDName  PSBName  ADD               
IMS2     IMS1        0 Y                                          
IMS2     IMS2        0 Y                                          
IMS2     IMS1        0        OLCDB105          Y                 
IMS2     IMS2        0        OLCDB105          Y                 
IMS2     IMS1        0        OLCDB111          Y                 
IMS2     IMS2        0        OLCDB111          Y                 
IMS2     IMS1        0        OLCDI111          Y                 
IMS2     IMS2        0        OLCDI111          Y                 
IMS2     IMS1        0        OLCDX111          Y                 
IMS2     IMS2        0        OLCDX111          Y                 
IMS2     IMS1        0                 OLCPB105 Y                 
IMS2     IMS2        0                 OLCPB105 Y                 
IMS2     IMS1        0                 OLCPB111 Y                 
IMS2     IMS2        0                 OLCPB111 Y                        
OM API input:
CMD (INITIATE OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(OLCDB105 OLCDX111))
OM API output:
<imsout>                 
<ctl>                    
<omname>OM1OM   </omname>
<omvsn>1.3.0</omvsn>                                 
<xmlvsn>20  </xmlvsn>                                
<statime>2006.268 17:31:50.028126</statime>          
<stotime>2006.268 17:31:50.672287</stotime>          
<staseq>BF75AD9623B5EAE3</staseq>                    
<stoseq>BF75AD96C0F9F723</stoseq>                    
<rqsttkn1>USRID01 10103150</rqsttkn1>                
<rc>0200000C</rc>                                    
<rsn>00003000</rsn>                                  
<rsnmsg>CSLN023I</rsnmsg>                            
<rsntxt>At least one request was successful.</rsntxt>
</ctl>                                               
<cmderr>                                             
<mbr name="IMS1    ">                                
<typ>IMS     </typ>                                  
<styp>DBDC    </styp>                                
<rc>02000004</rc>                                    
<rsn>00001008</rsn>                                  
<rsntxt>Command ROUTE list overridden w/ANY</rsntxt> 
</mbr>                                               
</cmderr>                                            
<cmd>                                                
<master>IMS2    </master>                            
<userid>USRID01 </userid>                                              
<verb>INIT</verb>                                                      
<kwd>OLC             </kwd>                                            
<input>INIT OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(OLCDB105 OLCDX111)    
</input>                                                               
</cmd>                                                                 
<cmdrsphdr>                                                            
<hdr slbl="MBR" llbl="MbrName" scope="LCL" sort="n" key="0"            
 scroll="yes" len="8" dtype="CHAR" align="left" />                     
<hdr slbl="IMSMBR" llbl="Member" scope="LCL" sort="a" key="4"          
 scroll="no" len="8" dtype="CHAR" align="left" />                      
<hdr slbl="CC" llbl="CC" scope="LCL" sort="n" key="0" scroll="yes"     
 len="4" dtype="INT" align="right" />                                  
<hdr slbl="CCTXT" llbl="CCText" scope="LCL" sort="n" key="0"           
 scroll="yes" len="*" dtype="CHAR" align="left" skipb="yes" />         
<hdr slbl="ACBS" llbl="ACBSHR" scope="LCL" sort="n" key="0"            
 scroll="yes" len="1" dtype="CHAR" align="left" skipb="yes" />         
<hdr slbl="RSC" llbl="RSCName" scope="LCL" sort="a" key="3" scroll="no"
 len="8" dtype="CHAR" align="left" skipb="yes" />                      
<hdr slbl="DBD" llbl="DBDName" scope="LCL" sort="a" key="2" scroll="no"
 len="8" dtype="CHAR" align="left" skipb="yes" />                      
<hdr slbl="PSB" llbl="PSBName" scope="LCL" sort="a" key="1" scroll="no"
 len="8" dtype="CHAR" align="left" skipb="yes" />                      
<hdr slbl="ADD" llbl="ADD" scope="LCL" sort="n" key="0" scroll="yes"    
 len="1" dtype="CHAR" align="left" skipb="yes" />                       
<hdr slbl="CHG" llbl="CHNG" scope="LCL" sort="n" key="0" scroll="yes"   
 len="1" dtype="CHAR" align="left" skipb="yes" />                       
<hdr slbl="CPY" llbl="COPY" scope="LCL" sort="n" key="0" scroll="yes"   
 len="1" dtype="CHAR" align="left" skipb="yes" />                       
<hdr slbl="RFS" llbl="RFSH" scope="LCL" sort="n" key="0" scroll="yes"   
 len="1" dtype="CHAR" align="left" skipb="yes" />                       
</cmdrsphdr>                                                            
<cmdrspdata>                                                            
<rsp>MBR(IMS2    ) IMSMBR(IMS1    ) CC(   0) ACBS(Y) </rsp>             
<rsp>MBR(IMS2    ) IMSMBR(IMS1    ) CC(   0) DBD(OLCDB105) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS1    ) CC(   0) DBD(OLCDX111) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS1    ) CC(   0) DBD(OLCDB111) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS1    ) CC(   0) DBD(OLCDI111) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS1    ) CC(   0) PSB(OLCPB105) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS1    ) CC(   0) PSB(OLCPB111) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) ACBS(Y) </rsp>             
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) DBD(OLCDB105) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) DBD(OLCDX111) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) DBD(OLCDB111) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) DBD(OLCDI111) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) PSB(OLCPB105) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) PSB(OLCPB111) ADD(Y) </rsp>
</cmdrspdata>

Explanation: The INIT OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(OLCDB105 OLCDX111) command is issued. IMS2 is the command master. IMS1 and IMS2 are in the OLCSTAT data set. The ACBSHR=Y is defined at all IMS systems so only the command master writes to the ACBLIB. The online change prepare phase is successful at all IMS systems. The command master returns to the OM the members that are to be added, changed, or copied from the staging ACBLIB to the active ACBLIB.

You can issue the INIT OLC PHASE(COMMIT) command to complete the online change.

Example 4 for INITIATE OLC command

TSO SPOC input:
INITIATE OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(OLCDB105) 
TSO SPOC output:
MbrName  Member     CC CCText             ACBSHR RSCName  DBDName  PSBName  ADD
IMS2     IMS1        0                    N                                    
IMS2     IMS2        0                    N                                    
IMS2     IMS2       10 NO RESOURCES FOUND        OLCDB105                      
IMS2     IMS1        0                                    OLCDB105          Y  
IMS2     IMS1        0                                             OLCPB105 Y                           
OM API input:
CMD (INITIATE OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(OLCDB105))
OM API output:
<imsout>                 
<ctl>                    
<omname>OM1OM   </omname>
<omvsn>1.3.0</omvsn>                                   
<xmlvsn>20  </xmlvsn>                                  
<statime>2006.268 18:08:10.305797</statime>            
<stotime>2006.268 18:08:10.993076</stotime>            
<staseq>BF75B5B56A1054E3</staseq>                      
<stoseq>BF75B5B611DB442C</stoseq>                      
<rqsttkn1>USRID01 10110810</rqsttkn1>                  
<rc>0200000C</rc>                                      
<rsn>0000300C</rsn>                                    
<rsnmsg>CSLN055I</rsnmsg>                              
<rsntxt>The command completed with warning(s).</rsntxt>
</ctl>                                                 
<cmderr>                                               
<mbr name="IMS2    ">                                  
<typ>IMS     </typ>                                    
<styp>DBDC    </styp>                                  
<rc>00000004</rc>                                      
<rsn>0000100C</rsn>                                    
<rsntxt>Some down or not applicable</rsntxt>           
</mbr>                                                 
<mbr name="IMS1    ">                                  
<typ>IMS     </typ>                                    
<styp>DBDC    </styp>                                  
<rc>02000004</rc>                                                   
<rsn>00001008</rsn>                                                 
<rsntxt>Command ROUTE list overridden w/ANY</rsntxt>                
</mbr>                                                              
</cmderr>                                                           
<cmd>                                                               
<master>IMS2    </master>                                           
<userid>USRID01 </userid>                                           
<verb>INIT</verb>                                                   
<kwd>OLC             </kwd>                                         
<input>INIT OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(OLCDB105) </input> 
</cmd>                                                              
<cmdrsphdr>                                                         
<hdr slbl="MBR" llbl="MbrName" scope="LCL" sort="n" key="0"         
 scroll="yes" len="8" dtype="CHAR" align="left" />                  
<hdr slbl="IMSMBR" llbl="Member" scope="LCL" sort="a" key="4"       
 scroll="no" len="8" dtype="CHAR" align="left" />                   
<hdr slbl="CC" llbl="CC" scope="LCL" sort="n" key="0" scroll="yes"  
 len="4" dtype="INT" align="right" />                               
<hdr slbl="CCTXT" llbl="CCText" scope="LCL" sort="n" key="0"        
 scroll="yes" len="*" dtype="CHAR" align="left" skipb="yes" />      
<hdr slbl="ACBS" llbl="ACBSHR" scope="LCL" sort="n" key="0"         
 scroll="yes" len="1" dtype="CHAR" align="left" skipb="yes" />      
<hdr slbl="RSC" llbl="RSCName" scope="LCL" sort="a" key="3" scroll="no"  
 len="8" dtype="CHAR" align="left" skipb="yes" />                        
<hdr slbl="DBD" llbl="DBDName" scope="LCL" sort="a" key="2" scroll="no"  
 len="8" dtype="CHAR" align="left" skipb="yes" />                        
<hdr slbl="PSB" llbl="PSBName" scope="LCL" sort="a" key="1" scroll="no"  
 len="8" dtype="CHAR" align="left" skipb="yes" />                        
<hdr slbl="ADD" llbl="ADD" scope="LCL" sort="n" key="0" scroll="yes"     
 len="1" dtype="CHAR" align="left" skipb="yes" />                        
<hdr slbl="CHG" llbl="CHNG" scope="LCL" sort="n" key="0" scroll="yes"    
 len="1" dtype="CHAR" align="left" skipb="yes" />                        
<hdr slbl="CPY" llbl="COPY" scope="LCL" sort="n" key="0" scroll="yes"    
 len="1" dtype="CHAR" align="left" skipb="yes" />                        
<hdr slbl="RFS" llbl="RFSH" scope="LCL" sort="n" key="0" scroll="yes"    
 len="1" dtype="CHAR" align="left" skipb="yes" />                        
</cmdrsphdr>                                                             
<cmdrspdata>                                                             
<rsp>MBR(IMS2    ) IMSMBR(IMS1    ) CC(   0) ACBS(N) </rsp>              
<rsp>MBR(IMS2    ) IMSMBR(IMS1    ) CC(   0) DBD(OLCDB105) ADD(Y) </rsp> 
<rsp>MBR(IMS2    ) IMSMBR(IMS1    ) CC(   0) PSB(OLCPB105) ADD(Y) </rsp> 
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) ACBS(N) </rsp>              
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(  10) CCTXT(NO RESOURCES FOUND)   
 RSC(OLCDB105)  </rsp>                                                   
</cmdrspdata>                                                            
</imsout> 

Explanation: The INIT OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(OLCDB105) command is issued. IMS2 is the command master. IMS1 and IMS2 are in the OLCSTAT data set. The ACBSHR=N is defined at all IMS systems. All IMS systems will write to their own ACBLIB.

The online change prepare phase is successful at IMS1 and IMS3. The online change is not applicable at IMS2 because member DBD1 is not found in IMS2 staging ACBLIB and active ACBLIB.

All sharing IMS systems return the member information to the command master. The command master returns to the OM the members that are to be added, changed, or copied from the staging ACBLIB to the active ACBLIB.

You can issue the INIT OLC PHASE(COMMIT) command to complete the online change.

Example 5 for INITIATE OLC command

TSO SPOC input:
INITIATE OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(OLCDB105 OLCDX111)  
TSO SPOC output:
MbrName  Member     CC CCText                         ACBSHR DBDName  PSBName  ADD
IMS2     IMS1        1 CMD NOT APPLICABLE TO THIS IMS N                         
IMS2     IMS2        0                                N                         
IMS2     IMS2        0                                       OLCDB105          Y
IMS2     IMS2        0                                       OLCDB111          Y
IMS2     IMS2        0                                       OLCDI111          Y
IMS2     IMS2        0                                       OLCDX111          Y
IMS2     IMS2        0                                                OLCPB105 Y
IMS2     IMS2        0                                                OLCPB111 Y                        
OM API input:
CMD (INITIATE OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(OLCDB105 OLCDX111))
OM API output:
<imsout>                  
<ctl>                     
<omname>OM1OM   </omname> 
<omvsn>1.3.0</omvsn>                                     
<xmlvsn>20  </xmlvsn>                                    
<statime>2006.275 22:29:51.356740</statime>              
<stotime>2006.275 22:34:25.572982</stotime>              
<staseq>BF7EBD4154744026</staseq>                        
<stoseq>BF7EBE46D7C761E4</stoseq>                        
<rqsttkn1>USRID01 10152951</rqsttkn1>                    
<rc>0200000C</rc>                                        
<rsn>0000300C</rsn>                                      
<rsnmsg>CSLN055I</rsnmsg>                                
<rsntxt>The command completed with warning(s).</rsntxt>  
</ctl>                                                   
<cmderr>                                                 
<mbr name="IMS2    ">                                    
<typ>IMS     </typ>                                      
<styp>DBDC    </styp>                                    
<rc>00000004</rc>                                        
<rsn>0000100C</rsn>                                      
<rsntxt>Some down or not applicable</rsntxt>             
</mbr>                                                   
</cmderr>                                                
<cmd>                                                    
<master>IMS2    </master>                                
<userid>USRID01 </userid>                                                     
<verb>INIT</verb>                                                             
<kwd>OLC             </kwd>                                                   
<input>INITIATE OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(OLCDB105 OLCDX111)       
 </input>                                                                     
</cmd>                                                                        
<cmdrsphdr>                                                                   
<hdr slbl="MBR" llbl="MbrName" scope="LCL" sort="n" key="0"                   
 scroll="yes" len="8" dtype="CHAR" align="left" />                            
<hdr slbl="IMSMBR" llbl="Member" scope="LCL" sort="a" key="4"                 
 scroll="no" len="8" dtype="CHAR" align="left" />                             
<hdr slbl="CC" llbl="CC" scope="LCL" sort="n" key="0" scroll="yes"            
 len="4" dtype="INT" align="right" />                                         
<hdr slbl="CCTXT" llbl="CCText" scope="LCL" sort="n" key="0"                  
 scroll="yes" len="*" dtype="CHAR" align="left" skipb="yes" />                
<hdr slbl="ACBS" llbl="ACBSHR" scope="LCL" sort="n" key="0"                   
 scroll="yes" len="1" dtype="CHAR" align="left" skipb="yes" />                
<hdr slbl="RSC" llbl="RSCName" scope="LCL" sort="a" key="3" scroll="no"       
 len="8" dtype="CHAR" align="left" skipb="yes" />                             

<hdr slbl="DBD" llbl="DBDName" scope="LCL" sort="a" key="2" scroll="no"       
 len="8" dtype="CHAR" align="left" skipb="yes" />                             
<hdr slbl="PSB" llbl="PSBName" scope="LCL" sort="a" key="1" scroll="no"       
 len="8" dtype="CHAR" align="left" skipb="yes" />                             
<hdr slbl="ADD" llbl="ADD" scope="LCL" sort="n" key="0" scroll="yes"    
 len="1" dtype="CHAR" align="left" skipb="yes" />                       
<hdr slbl="CHG" llbl="CHNG" scope="LCL" sort="n" key="0" scroll="yes"   
 len="1" dtype="CHAR" align="left" skipb="yes" />                       
<hdr slbl="CPY" llbl="COPY" scope="LCL" sort="n" key="0" scroll="yes"   
 len="1" dtype="CHAR" align="left" skipb="yes" />                       
<hdr slbl="RFS" llbl="RFSH" scope="LCL" sort="n" key="0" scroll="yes"   
 len="1" dtype="CHAR" align="left" skipb="yes" />                       
</cmdrsphdr>                                                            
<cmdrspdata>                                                            
<rsp>MBR(IMS2    ) IMSMBR(IMS1    ) CC(   1) CCTXT(CMD NOT APPLICABLE   
 TO THIS IMS) ACBS(N) </rsp>                                            
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) ACBS(N) </rsp>             
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) DBD(OLCDB105) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) DBD(OLCDX111) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) DBD(OLCDB111) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) DBD(OLCDI111) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) PSB(OLCPB105) ADD(Y) </rsp>
<rsp>MBR(IMS2    ) IMSMBR(IMS2    ) CC(   0) PSB(OLCPB111) ADD(Y) </rsp>
</cmdrspdata>                                                           
</imsout>

Explanation: The INIT OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(OLCDB105 OLCDX111) command is issued. IMS2 is the command master. IMS1 and IMS2 are in the OLCSTAT data set. The ACBSHR=N is defined at all IMS systems. All IMS systems will write to their own ACBLIB.

The online change prepare phase is successful at IMS1 and IMS3. The online change prepare phase fails at IMS2 because PSBY is not found in IMS2 staging ACBLIB and PSBY is found in IMS2 active ACBLIB. This implies a member deletion for PSBY. The command fails with a return and reason code of LIST | SOME because member online change does not support deleting members.

All sharing IMS systems return the member information to the command master. The command master returns to the OM the members that are to be added, changed, or copied from the staging ACBLIB to the active ACBLIB.

You must issue the TERM OLC command to terminate the online change. You must add PSBY to the staging ACBLIB for member online change or perform a full library switch online change to have PSBY deleted.

Explanation: The INIT OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(OLCDB105) command is issued. IMS2 is the command master. IMS1 and IMS2 are in the OLCSTAT data set. The ACBSHR=N is defined at all IMS systems. All IMS systems will write to their own ACBLIB.

The online change prepare phase is successful at IMS1 and IMS3. The online change is not applicable at IMS2 because member DBD1 is not found in IMS2 staging ACBLIB and active ACBLIB.

All sharing IMS systems return the member information to the command master. The command master returns to the OM the members that are to be added, changed, or copied from the staging ACBLIB to the active ACBLIB.

You can issue the INIT OLC PHASE(COMMIT) command to complete the online change.

Example 6 for INITIATE OLC command

TSO SPOC input:
INIT OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(ECHOPGM,ECHODBD) OPTION(NAMEONLY)
TSO SPOC output:
      MbrName  Member     CC ACBSHR DBDName  PSBName  ADD
      IMS1     IMS1        0 N
      IMS1     IMS1        0        ECHODBD           Y
      IMS1     IMS1        0                 ECHOPGM  Y                      
OM API input:
INIT OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(ECHOPGM,ECHODBD) OPTION(NAMEONLY) 
OM API output:
<cmdrsphdr>                                                       
<hdr slbl="MBR" llbl="MbrName" scope="LCL" sort="n" key="0"       
 scroll="yes" len="8" dtype="CHAR" align="left" />                
<hdr slbl="IMSMBR" llbl="Member" scope="LCL" sort="a" key="4"     
 scroll="no" len="8" dtype="CHAR" align="left" />                 
<hdr slbl="CC" llbl="CC" scope="LCL" sort="n" key="0" scroll="yes"
 len="4" dtype="INT" align="right" />                             
<hdr slbl="CCTXT" llbl="CCText" scope="LCL" sort="n" key="0"      
 scroll="yes" len="*" dtype="CHAR" align="left" skipb="yes" />    
<hdr slbl="ACBS" llbl="ACBSHR" scope="LCL" sort="n" key="0"             
 scroll="yes" len="1" dtype="CHAR" align="left" skipb="yes" />          
<hdr slbl="RSC" llbl="RSCName" scope="LCL" sort="a" key="3" scroll="no" 
 len="8" dtype="CHAR" align="left" skipb="yes" />                       
<hdr slbl="DBD" llbl="DBDName" scope="LCL" sort="a" key="2" scroll="no" 
 len="8" dtype="CHAR" align="left" skipb="yes" />                       
<hdr slbl="PSB" llbl="PSBName" scope="LCL" sort="a" key="1" scroll="no" 
 len="8" dtype="CHAR" align="left" skipb="yes" />                       
<hdr slbl="ADD" llbl="ADD" scope="LCL" sort="n" key="0" scroll="yes"    
 len="1" dtype="CHAR" align="left" skipb="yes" />                       
<hdr slbl="CHG" llbl="CHNG" scope="LCL" sort="n" key="0" scroll="yes"   
 len="1" dtype="CHAR" align="left" skipb="yes" />                       
<hdr slbl="CPY" llbl="COPY" scope="LCL" sort="n" key="0" scroll="yes"   
 len="1" dtype="CHAR" align="left" skipb="yes" />                       
<hdr slbl="RFS" llbl="RFSH" scope="LCL" sort="n" key="0" scroll="yes"   
 len="1" dtype="CHAR" align="left" skipb="yes" />                       
</cmdrsphdr>                                                            
<cmdrspdata>                                                            
<rsp>MBR(IMS1    ) IMSMBR(IMS1    ) CC(   0) ACBS(N) </rsp>             
<rsp>MBR(IMS1    ) IMSMBR(IMS1    ) CC(   0) PSB(ECHOPGM ) CPY(Y) </rsp>
<rsp>MBR(IMS1    ) IMSMBR(IMS1    ) CC(   0) DBD(ECHODBD ) CPY(Y) </rsp>
</cmdrspdata>                         

Explanation: PSB ECHOPGM and DBD ECHOPGM are specified to be added to the active ACB library. These are new to the active ACB library.

Example 7 for INITIATE OLC command

TSO SPOC input:
INIT OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(ECHODBD) OPTION(NAMEONLY)
TSO SPOC output:
      MbrName  Member     CC CCText                           ACBSHR  DBDName
      IMS1     IMS1        0                                  N
      IMS1     IMS1      12A NAMEONLY DBD CHANGES NOT ALLOWED         ECHODBD                      
OM API input:
INIT OLC PHASE(PREPARE) TYPE(ACBMBR) NAME(ECHODBD) OPTION(NAMEONLY) 
OM API output:
<cmdrsphdr>                                                            
<hdr slbl="MBR" llbl="MbrName" scope="LCL" sort="n" key="0"            
 scroll="yes" len="8" dtype="CHAR" align="left" />                     
<hdr slbl="IMSMBR" llbl="Member" scope="LCL" sort="a" key="4"          
 scroll="no" len="8" dtype="CHAR" align="left" />                      
<hdr slbl="CC" llbl="CC" scope="LCL" sort="n" key="0" scroll="yes"     
 len="4" dtype="INT" align="right" />                                  
<hdr slbl="CCTXT" llbl="CCText" scope="LCL" sort="n" key="0"           
 scroll="yes" len="*" dtype="CHAR" align="left" skipb="yes" />         
<hdr slbl="ACBS" llbl="ACBSHR" scope="LCL" sort="n" key="0"            
 scroll="yes" len="1" dtype="CHAR" align="left" skipb="yes" />         
<hdr slbl="RSC" llbl="RSCName" scope="LCL" sort="a" key="3" scroll="no"
 len="8" dtype="CHAR" align="left" skipb="yes" />                      
<hdr slbl="DBD" llbl="DBDName" scope="LCL" sort="a" key="2" scroll="no"
 len="8" dtype="CHAR" align="left" skipb="yes" />                      
<hdr slbl="PSB" llbl="PSBName" scope="LCL" sort="a" key="1" scroll="no"
 len="8" dtype="CHAR" align="left" skipb="yes" />                      
<hdr slbl="ADD" llbl="ADD" scope="LCL" sort="n" key="0" scroll="yes"   
 len="1" dtype="CHAR" align="left" skipb="yes" />                      
<hdr slbl="CHG" llbl="CHNG" scope="LCL" sort="n" key="0" scroll="yes"  
 len="1" dtype="CHAR" align="left" skipb="yes" />                      
<hdr slbl="CPY" llbl="COPY" scope="LCL" sort="n" key="0" scroll="yes"  
 len="1" dtype="CHAR" align="left" skipb="yes" />                      
<hdr slbl="RFS" llbl="RFSH" scope="LCL" sort="n" key="0" scroll="yes"  
 len="1" dtype="CHAR" align="left" skipb="yes" />                      
</cmdrsphdr>                                                           
<cmdrspdata>                                                           
<rsp>MBR(IMS1    ) IMSMBR(IMS1    ) CC(   0) ACBS(N) </rsp>            
<rsp>MBR(IMS1    ) IMSMBR(IMS1    ) CC( 12A) CCTXT(NAMEONLY DBD CHANGES
 NOT ALLOWED) DBD(ECHODBD )    (Y) </rsp>                              
</cmdrspdata>                         

Explanation: ECHODBD already exists in the active ACB library. ECHODBD is not in the MODBLKS library.

Example 8 for INITIATE OLC command

In the following example, the INIT OLC PHASE(PREPARE) TYPE(MODBLKS,ACBLIB) command is issued in an IMSplex that has two IMS systems with DRD and IMS management of ACBs enabled. The PREPARE phase fails as the command is not applicable in the environment. The COMMIT fails as there is no OLC to commit. The OLC must be terminated.

INIT OLC PHASE(PREPARE) TYPE(MODBLKS,ACBLIB)  
     MbrName  Member     CC CCText                                        
     IMS1     IMS2        1 CMD NOT APPLICABLE TO THIS IMS                
     IMS2     IMS2        1 CMD NOT APPLICABLE TO THIS IMS

INIT OLC PHASE(COMMIT)                                 
     MbrName  Member     CC CCText                                        
     IMS1     IMS2        1 CMD NOT APPLICABLE TO THIS IMS                
     IMS2     IMS2        1 CMD NOT APPLICABLE TO THIS IMS

TERM OLC                                               
     MbrName  Member     CC                                               
     IMS1     IMS2        0                           
     IMS2     IMS2        0 

Example 9 for INITIATE OLC command

In the following example, the TYPE(ALL) is specified on the command in an environment where ACBLIB is not used because the IMS management of ACBs is enabled, but MODBLKS OLC and FMTLIB OLC are enabled. The OLC for the ACBLIB is ignored.

INIT OLC PHASE(PREPARE) TYPE(ALL)         
MbrName  Member     CC ACBLIB FMTLIB MODBLKS    ModId    
SYS3     SYS3        0      A      A       A        5    
                                                         
	INIT OLC PHASE(COMMIT)                 
MbrName  Member     CC ACBLIB FMTLIB MODBLKS    ModId 
SYS3     SYS3        0      B      B       B        6