|
- To change affinity, set the X020SAF field in the $XPL work area
using the $SETAFF macro.
To allow the job to run on any member: $SETAFF REQUEST=ANY,AFFIELD=X020SAF
To allow the job to run on only this member: $SETAFF REQUEST=CLEAR,AFFIELD=X020SAF
$SETAFF REQUEST=ADD,AFFIELD=X020SAF
AFTOKEN=$AFFINTY
- If MVS™ submits a job through an internal reader, it can force
a job's affinity to the local member. This can occur when the automatic restart manager restarts
a job. The automatic restart manager expects the job to execute on a specific member, and will
change the job's affinity so the job can run on that specific member, if necessary.
If the automatic restart manager has changed the job's affinity, the X0201ARM flag in the XPL
is on. You can test this flag and determine whether the affinity was changed.
With that information, you can then decide whether to avoid changing the
affinity.
- To set independent mode for a job, the installation must turn
on the bit X0201IND in X020FLG1.
To put jobs that start with the characters
'IND' into independent mode: EXIT20 $ENTRY BASE=R12,SAVE=YES Set entry point
LTR R10,R10 If JCT not present
BZ RRET can't check jobname
CLC =C'IND',JCTJNAME Job want independent mode?
BNE RRET No, leave flags alone
OI X020FLG1, X0201IND Set independent mode
RRET $RETURN RC=0 Return to caller
- To change the priority, set X020PRIO in the XPL. The priority
is contained in the 4 high-order bits of X020PRIO. For example, a value of
'C0' indicates priority 12. (See z/OS JES2 Initialization and Tuning Reference for
further details on setting and changing job priority.)
- To change the execution node, update X020XNOD with the half word binary
value of the node. Use the $DEST macro to convert an EBCDIC node name to the
internal binary representation of the node number
- To change the job class, place the new job class in X020JCLS. This is
honored only if the job is a batch job, not if it is an STC or TSU job.
- The exit can influence the next phase of the job in most circumstances.
Place the next phase value in X020NEXT. X020NEXT is primed with the phase
that JES2 believes is the correct next phase when the exit is called. The
exit can place one of these values in X020NEXT:
- $OUTPUT
- Places the job in the OUTPUT queue unless JES2 has already determined
that the job should be purged. In that case, X020NEXT is ignored.
- $PURGE
- Places the job in the PURGE queue.
- Any other phase
- JES2 honors the request unless it has already determined that the job
should be placed in the OUTPUT or PURGE phase.
The next phase can also be set through the return code in R15. If
one or both of the specifications specify PURGE; then PURGE will be the next
phase. If neither specify PURGE, but one or both specify OUTPUT; then the
next phase will be OUTPUT.
- Extending the JCT Control Block
You can add,
expand, locate, and remove extensions to the job control table ($JCT) control
block from this exit using the $JCTX macro extension service. For example,
you can use these extensions to store job-related information. For more information,
see z/OS JES2 Macros.
- This exit will not be taken under the following circumstances:
- The JES2 input service processor fails the job because JES2 does not identify
a JOB card within the input stream.
- If you need to change the scheduling environment, use the
X020SENV field in the XPL.
- Setting the X020AVF response bit does NOT influence the next
phase of the job. To influence the next phase of the job, you must use the
documented methods.
|