For an MNPS planned takeover to occur, the application program
must be in pending SNPS recovery state. An application enters this
state when it has enabled persistence and then issues CLOSE ACB or
fails. The state is maintained by the owning VTAM® in the multinode persistent sessions coupling
facility structure, so that other VTAMs in the sysplex are aware that
the application is eligible for planned takeover processing.
Note: The D NET,ID command can be used to verify the state of any MNPS
application within the sysplex.
If using APPC/MVS as a persistent application, you must specify
the PERSIST keyword to support planned takeover. PERSIST has been
added to the LUADD statement in the APPCPMxx parmlib member. When
you code this keyword, APPC/MVS issues a persistent close when LUDEL
is issued for one of its LUs.
The following describes the planned takeover process:
- Either through an operator command or the automatic restart manager,
an application opens an ACB with the same application program name
as the application program that failed or closed its ACB.
- The recovering VTAM obtains
the capabilities of the application being recovered from the coupling
facility structure. The capabilities of the recovering application
program must match those of the application program being recovered
for takeover to continue. See z/OS Communications Server: SNA Programming for details on the actual capabilities that
must match.
- The new owning VTAM determines
if it has a CDRSC with the same name as the new application program.
If a CDRSC definition exists and VTAM determines that the CDRSC represents the recovering application
program when it was active on its previous owning VTAM, the sessions associated with the CDRSC
are terminated and the CDRSC becomes a shadow resource. This must
be done because an application program of the same name is attempting
to move to this node.
If recovery occurs at a VTAM DLUS node, any sessions between the application
and DLUR-dependent LUs served by the VTAM DLUS network node are the exceptions to this processing.
If the DLUS is intermediate or absent on the HPR connection path,
the DLUS has only minimal session awareness of these sessions. These
sessions will be maintained and associated with the HPR connection
that is to be rebuilt during MNPS recovery processing. Although the
sessions are maintained, they will be disconnected from the CDRSC
representation of the application at this point in the processing
and associated with the APPL RDTE that now represents the application.
This allows OPEN ACB processing to continue.
- OPEN ACB processing is performed for the application at the takeover VTAM, but no response is posted
to the application. VTAM must
first obtain ownership of the application from the current owning VTAM before the OPEN ACB can be
considered to be a success.
- The VTAM attempting to
acquire ownership sends a takeover request to the current VTAM (by XCF). If accepted, the
current owning VTAM updates
the multinode persistent session structure to show the takeover VTAM as the application owner,
and then sends a positive takeover reply.
- When the takeover VTAM receives
the positive takeover reply, VTAM will claim the structure storage lists associated with the application
and will mark the application as being enabled for persistence. The
response to the OPEN ACB is then posted to the application, because
this VTAM has now acquired
ownership of the application.
- After transferring ownership, the previous owning VTAM cleans up its local representations of
the sessions, using care to prevent any modifications to the coupling
facility data. The HPR connections associated with the sessions are
also cleaned up locally, although the other endpoint is unaware of
the processing as VTAM will
not send, or handle any received, information about these connections.
The image of the application is also cleaned up at the previous owning VTAM. Any sessions not involving
HPR pipes are terminated at this point by the previous owning VTAM.
If the previous owning VTAM is a DLUS network node, minimal
awareness of sessions between the application and DLUR-dependent LUs
served by this VTAM DLUS will
be maintained after the local session representation is cleaned up.
This minimal session awareness must be kept to provide accurate session
limit management for the dependent LUs. To maintain this session awareness,
a CDRSC representation of the application must either be reused from
the shadow set of resources (if a predefined CDRSC had existed for
the application before OPEN ACB having been performed), or a CDRSC
must be created dynamically. If no CDRSC can be reused or built (for
example, CDRDYN=NO was specified as a start option), then session
awareness cannot be maintained, and the session is terminated.
- The takeover VTAM performs
path switches to make this VTAM the new endpoint for the HPR connections associated with the application.
During the path switch processing, the recovering side of the session
will wait 90 seconds for the other endpoint to restart the HPR connection.
If no response is received, recovery does not complete.
The other
end of the HPR connection is cleaned up if its path switch timer pops.
For HPR connections being used by multinode persistent sessions, the
minimum value for the path switch timer (for VTAM, this is the HPRPST start option) is four
minutes. However, if a higher value is specified on the HPRPST start
option, it will be used.
- The new owning VTAM re-creates
the necessary session control blocks from the information in the coupling
facility. The application program must restore the session, using
the OPNDST RESTORE command or APPCCMD RESTORE (if using the APPCCMD
API), before session data traffic can resume completely.
Note: The OPEN will fail for an application program recovering for
a failed generic resource application program if the recovering VTAM does not support generic resources
and connect to the same generic resource structure.