IBM SC33-1683-02 Server User Manual


 
If an error occurs in route selection
If an error occurs in route selection—for example, if the sysid returned by the
distributed routing program is unavailable or unknown—the routing program is
invoked again. When this happens, you have a choice of actions:
1. You can try to route the request to a different target region, by changing the
sysid, and issuing a return code of ‘0’ in DYRRETC.
If this region too is unavailable, the routing program is again invoked for a route
selection error. A count of the times the routing program has been invoked for
routing purposes for this request is passed in field DYRCOUNT. Use this count
to help you decide when to stop trying to route the request.
2. You can tell CICS not to continue trying to route the request, by issuing a
non-zero return code in DYRRETC.
Invoking the distributed routing program on the target region
The route selection, notification, route selection error, and routing complete
invocations of the distributed routing program all occur on the requesting region. If
the routing program wants to be re-invoked
on the target region
, it must set the
DYROPTER field in the communications area to 'Y'. It must do this on its initial
(route selection or notification) invocation—and again, if it is reinvoked for a route
selection error.
If the routing program sets DYROPTER to 'Y', it is re-invoked on the target region:
v When the transaction associated with the routed request is about to be initiated
on the target region
v If the transaction terminates successfully
v If the transaction abends.
This is effective only if the target region is CICS TS Release 3 or later.
Each time it is invoked on the target region, the routing program could update a
count of transactions that are currently running on that region. When it is invoked
for routing, the routing program could use the counts maintained by all the regions
in the routing set (including itself) as input to its routing decision. This requires that
each region in the routing set has access to a common data set on which the
counts are recorded.
Some processing considerations
v Any of the EXEC CICS commands can be issued from the routing program. You
are likely to find the EXEC CICS INQUIRE CONNECTION and INQUIRE IRC
commands particularly useful if you want to confirm that a link is available before
routing a request. The EXEC CICS INQUIRE and SET commands are described
in the
CICS System Programming Reference
manual.
v Although the routing program can issue any EXEC CICS command, you should
consider carefully the effect of commands that alter recoverable resources,
because changes to those resources may be committed or backed out
inadvertently as a result of logic in the program that issued the START command.
v If you want to keep information about how requests are routed, it must be done
in the user routing program, perhaps by writing the information to a data set.
Note that, because the routing program is distributed, all the CICS regions in the
routing set must have access to the data set.
routing of non-terminal-related STARTs
584
CICS TS for OS/390: CICS Customization Guide
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|