z/OS MVS Programming: Sysplex Services Guide
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Server exit failures

z/OS MVS Programming: Sysplex Services Guide
SA23-1400-00

A server exit routine is considered to have failed if it fails to field an error or if it violates the rules of the XCF interface. If the server exit fails, XCF either returns to the invoker of the IXCSRVER REQTYPE=START request with a failing return code or percolates to its recovery environment. In either case, XCF cleans up its own resources and deletes the definition of the server instance. Requests for which the failed server was the last suitable instance are cancelled and acknowledged with a "no receiver" response code.

If a server exit is to establish its own recovery environment, it must establish it on each call (and delete the environment before returning to the XCF Server stub).

A server exit routine does not need to establish recovery as it might rely on the recovery established by the invoker of the IXCSRVR REQTYPE=START request. In that case, the server exit most likely uses the USERDATA keyword specified by the starter on IXCSRVR to locate control blocks for recovery resources. In the event of an error, the recovery for the XCF Server stub routine gets control and percolates to the recovery established by the invoker of the IXCSRVR REQTYPE=START request. To perform clean up of resources that recovery environment inspects the control blocks that are updated by the server exit to determine the required resources for clean up.

If the failed server exit routine is the last suitable server for a set of pending requests, the requests are cancelled and acknowledged with a response code indicating "no receiver." If you do not want these pending requests to be discarded, either ensure that the server exit routine establishes recovery so that it can handle errors and successfully retry, or ensure that there is some other suitable server instance to handle the pending requests. You might consider starting at least two server instances to reduce the risk of having a window of time where pending requests are discarded because no suitable server instance is available to process them.

The invoker of the IXCSRVR REQTYPE=START request can establish an ESTAE recovery environment but not an FRR. The server exit routine can establish either type of recovery environment.

If the server exit violates the XCF interface, the server is stopped by XCF. The XCF Server stub returns to the invoker of the IXCSRVR REQTYPE=START request with a failing return and reason code. Generally, violations of the interface occur when the server exit routine updates output fields in the Server Exit Parameter List (SXPL) in an inappropriate manner. XCF stops the server if the work area is not addressable.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014