z/OS MVS Programming: JES Common Coupling Services
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Obtaining information about JES members in the XCF group (IXZXIXIF macro)

z/OS MVS Programming: JES Common Coupling Services
SA23-1387-00

Your JDU might need to obtain information about other JES members in the JES XCF group. For example, you might need to know whether another JES has completed initialization. You can obtain this information by issuing the IXZXIXIF macro. When you issue IXZXIXIF, you must provide either the group token that represents the XCF member (GROUPTOKEN= parameter) or the group name of the JES XCF group (GROUPNAME= parameter).

IXZXIXIF can return much more data to the member requesting the information than that member requires. To limit the data JES XCF returns, you can use a set of filtering parameters on the IXZXIXIF macro call to provide only data for certain members or members in certain states. To use the filtering parameters, you must specify GROUPNAME=. The following lists these filtering parameters with an explanation of the type of data they can suppress:
IXZXIXIF Parameter
Limit data based on whether member is:
STATE=
Active (a member on an active MVS system only)
SYSTEM=
Current (a member on the MVS system from which this IXZXIXIF macro was issued)
POLYJES=
One of the JES2 members running on an MVS system, and you require information returned from only a single JES2 member. (This parameter has meaning in a JES2 environment only.)
FUNCTION=
OS/390 MVS Version 2 Release 6 or higher and supports the automatic restart manager
You can specify any or none of these parameters; they are all optional and each defaults to no data filtering. Therefore, if you do not set them, JES XCF returns data from all members of the JES XCF group in any state.
To map the member information records that the system returns, use mapping macro IXZYIXIF. The data returned by IXZXIXIF can be either put in a mailbox or put into a named buffer. If you choose to have the data put in a mailbox, use the REQMBOX= parameter on IXZXIXIF to identify the mailbox name. The data is returned to the mailbox and considered by JES XCF as system event data. Therefore, you need to specify MSGFETCH=ALL or MSGFETCH=SYSEVENT when issuing an IXZXIXRM (receive message) macro. If you choose to have the data returned in a buffer, specify the ANSAREA= and ANSLEN= parameters on IXZXIXIF to specify the name and length of the buffer. To use a buffer, you need to obtain storage for it. Calculate the size of this buffer as follows:
buffer size = (size of IXZYIXIF mapping macro) x (number of JES XCF group members)
If you have miscalculated this value and provide a buffer that is too small, JES XCF returns the necessary size in the field you specified on the ANSLEN= parameter. You must then free the incorrectly sized buffer, obtain one of the required size, and invoke IXZXIXIF again. The data IXZXIXIF returns in the buffer is available in an array format as shown in Figure 1. Note that the last element in the array contains a value of 0 (zero).

Attention:

IBM recommends that you use REQMBOX= to receive the data JES XCF returns. Particularly when running under the JES main task, the JDU using this method minimizes potential performance degradation when the JDU issues an IXZXIXIF call. Performance can suffer because IXZXIXIF requires I/O, therefore, issue IXZXIXIF sparingly. When you do issue IXZXIXIF, you can minimize the performance impact for the JDU by using a mailbox rather than a buffer. Using a mailbox causes asynchronous processing of the request, whereas using a buffer causes synchronous processing.
Figure 1. Array format of data returned by IXZXIXIF
Array format of data returned by IXZXIXIF

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014