When the RESTORE command is encountered, SMP/E looks at each SYSMOD
specified in the SELECT list to make sure the following conditions
hold:
- The SYSMOD has been applied to the target zone specified in the
previous SET command.
- The SYSMOD has not been accepted to the distribution zone specified
in the RELATED field of the TARGETZONE entry for the target zone specified
in the previous SET command.
If any SYSMODs are found that do not meet both of these conditions,
error messages are written to the SMPLOG and SMPOUT, and those SYSMODs
are not considered eligible to be restored.
Once the SYSMODs specified in the SELECT list have been checked
for initial eligibility, SMP/E checks to see whether any other SYSMODs
are affected. There are two ways other SYSMODs can be affected:
- SYSMODs can be related to one another through the PRE, REQ, FMID,
and SUP operands of their ++VER statement or the REQ operand of the
++IF statement.
For each candidate SYSMOD, SMP/E checks to see
whether dependencies exist between it and any other SYSMOD not yet
accepted. (That is, does any PRE, REQ, IFREQ, or FMID relationship
exist between the candidate SYSMOD and these other SYSMODs?) If so,
that SYSMOD must also be restored. This is true because of the stated
dependency on either the functional or service dependency of the SYSMODs.
- SYSMODs can be related to one another, because they have elements
in common.
For each candidate SYSMOD, SMP/E checks to see if any
other SYSMOD, not yet accepted, has modules in common with the candidate
SYSMOD. If so, that SYSMOD must also be restored. This is true because
of the method used to replace the elements on the system libraries.
The version of the element in the distribution library is used as
the backup. Thus, all SYSMODs that have replaced or modified the elements
since the distribution library version was accepted must also be removed.
Processing of these related SYSMODs depends on whether the GROUP
operand was specified:
- If the GROUP operand was specified, each of the related SYSMODs,
as previously identified, are included as candidates for RESTORE.
SMP/E then performs the same checking on these new candidates as on
the original set. This process continues until no additional SYSMODs
are added.
- If the GROUP operand was not specified, SMP/E issues an error
message to SMPOUT and SMPLOG indicating which of the SYSMODs specified
in the SELECT list cannot be restored. This information can also be
found in the RESTORE SYSMOD Status report.