1225 lines
40 KiB
HTML
1225 lines
40 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
|
<meta name="Copyright" content="Copyright (c) 2006 by IBM Corporation">
|
|
<title>Change Cluster Resource Services (QcstChgClusterResourceServices)
|
|
API</title>
|
|
<!-- All rights reserved. Licensed Materials Property of IBM -->
|
|
<!-- US Government Users Restricted Rights -->
|
|
<!-- Use, duplication or disclosure restricted by -->
|
|
<!-- GSA ADP Schedule Contract with IBM Corp. -->
|
|
<!-- Change History: -->
|
|
<!-- YYMMDD USERID Change description -->
|
|
<!-- Edited by Kersten Oct 2001 -->
|
|
<!-- End Header Records -->
|
|
<!-- -->
|
|
<!-- -->
|
|
<!-- -->
|
|
<!-- Begin Developer Note ========================================== -->
|
|
<!-- NOTE: If you are adding, changing, or removing ANY requirements -->
|
|
<!-- for this API chance are good that the GUI code need to change -->
|
|
<!-- also. The Cluster GUI code is built on top of this API and it -->
|
|
<!-- does a certain amount of explicit and implicit validation -->
|
|
<!-- checking of user data prior to the API call being made. Please -->
|
|
<!-- have the Cluster GUI developer check the -->
|
|
<!--/as400/v5r4m0.guix/cur/cmvc/java.pgm/ugcl.guix/com/ibm/as400/opnav/ugcl/ClGuiActionsManager.java/ClGuiActionsManager.java -->
|
|
<!-- part to determine if any Cluster GUI code changes are needed. -->
|
|
<!-- End Developer Note -->
|
|
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
|
|
</head>
|
|
<body>
|
|
<!--Java sync-link-->
|
|
<script type="text/javascript" language="Javascript" src="../rzahg/synch.js">
|
|
</script>
|
|
|
|
<a name="Top_Of_Page"></a>
|
|
|
|
<h2>Change Cluster Resource Services (QcstChgClusterResourceServices) API</h2>
|
|
|
|
<div class="box" style="width: 70%;">
|
|
<br>
|
|
Required Parameter Group:<br>
|
|
<!-- iddvc RMBR -->
|
|
<br>
|
|
<table width="100%">
|
|
<tr>
|
|
<td align="center" valign="top" width="10%">1</td>
|
|
<td align="left" valign="top" width="50%">Request handle</td>
|
|
<td align="left" valign="top" width="20%">Output</td>
|
|
<td align="left" valign="top" width="20%">Char(16)</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="left" valign="top">Cluster name</td>
|
|
<td align="left" valign="top">Input</td>
|
|
<td align="left" valign="top">Char(10)</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">3</td>
|
|
<td align="left" valign="top">Cluster resource services information</td>
|
|
<td align="left" valign="top">Input</td>
|
|
<td align="left" valign="top">Char(*)</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="left" valign="top">Length of cluster resource services
|
|
information</td>
|
|
<td align="left" valign="top">Input</td>
|
|
<td align="left" valign="top">Binary(4)</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">5</td>
|
|
<td align="left" valign="top">Format name</td>
|
|
<td align="left" valign="top">Input</td>
|
|
<td align="left" valign="top">Char(8)</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">6</td>
|
|
<td align="left" valign="top">Results information</td>
|
|
<td align="left" valign="top">Input</td>
|
|
<td align="left" valign="top">Char(30)</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">7</td>
|
|
<td align="left" valign="top">Error code</td>
|
|
<td align="left" valign="top">I/O</td>
|
|
<td align="left" valign="top">Char(*)</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<br>
|
|
<img src="delta.gif" alt="Start of change">Service Program: QCSTCTL2<img src="deltaend.gif" alt="End of change"> <br>
|
|
<!-- iddvc RMBR -->
|
|
<br>
|
|
Default Public Authority: *EXCLUDE<br>
|
|
<!-- iddvc RMBR -->
|
|
<br>
|
|
Threadsafe: Yes<br>
|
|
<!-- iddvc RMBR -->
|
|
<br>
|
|
</div>
|
|
|
|
<p>The Change Cluster Resource Services (QcstChgClusterResourceServices) API is
|
|
used to tune cluster performance and configuration parameters. The API provides
|
|
a base level of tuning support where the cluster will adjust to a predefined
|
|
set of values identified for high, low, and normal timeout and messaging
|
|
interval values using format CRSC0100. If an advanced level of tuning is
|
|
desired, usually anticipated with the help of IBM support personnel, then
|
|
individual parameters may be tuned over a predefined range of values using
|
|
format CRSC0200. Example control language command source has been provided in
|
|
the base operating system option 7 (Example Tools Library, QUSRTOOL). See
|
|
member, TCSTINFO, in file QUSRTOOL/QATTSYSC for more information.</p>
|
|
|
|
<p>The default values are set on a create operation and changes must be made
|
|
under the Change Cluster Resource Services API documented here. Values for
|
|
current settings may be retrieved using the <a href="clcntrtcrs.htm">Retrieve
|
|
Cluster Resource Services Information (QcstRetrieveCRSInfo) API</a>.</p>
|
|
|
|
<p>The rules for merging of partitioned nodes are as follows:</p>
|
|
|
|
<ul>
|
|
<li>If the tuning parameters defined under the Change Cluster Resource Services
|
|
API documented here match exactly in both partitions, a merge will be
|
|
allowed.</li>
|
|
</ul>
|
|
|
|
<p>This API operates in an asynchronous mode. See <a href=
|
|
"clust1a3.htm#HDRASYMOD">Behavior of Cluster Resource Services APIs</a> for
|
|
more information.</p>
|
|
|
|
<p><strong>Restriction:</strong> This API cannot be called from a cluster
|
|
resource group exit program.<br>
|
|
</p>
|
|
|
|
<h3>Authorities and Locks</h3>
|
|
|
|
<p>The program that calls this API must be running under a user profile with
|
|
*IOSYSCFG special authority.</p>
|
|
|
|
<dl>
|
|
<dt><em>User Queue Authority</em></dt>
|
|
|
|
<dd>*OBJOPR and *ADD</dd>
|
|
|
|
<dt><em>User Queue Library Authority</em></dt>
|
|
|
|
<dd>*EXECUTE</dd>
|
|
|
|
<dt><em>User Queue Lock</em></dt>
|
|
|
|
<dd>*EXCLRD</dd>
|
|
</dl>
|
|
|
|
<br>
|
|
<h3>Required Parameter Group</h3>
|
|
|
|
<dl>
|
|
<dt><strong>Request handle</strong></dt>
|
|
|
|
<dd>OUTPUT; CHAR(16)
|
|
|
|
<p>A unique string or handle that identifies this API call. It is used to
|
|
associate this call to any responses placed on the user queue specified in the
|
|
results information parameter.</p>
|
|
</dd>
|
|
|
|
<dt><strong>Cluster name</strong></dt>
|
|
|
|
<dd>INPUT; CHAR(10)
|
|
|
|
<p>The name of the cluster.</p>
|
|
</dd>
|
|
|
|
<dt><strong>Cluster resource services information</strong></dt>
|
|
|
|
<dd>INPUT; CHAR(*)
|
|
|
|
<p>Detailed information about the cluster resource services.</p>
|
|
</dd>
|
|
|
|
<dt><strong>Length of cluster resource services information</strong></dt>
|
|
|
|
<dd>INPUT; BINARY(4)
|
|
|
|
<p>The length of the cluster resource services information.</p>
|
|
</dd>
|
|
|
|
<dt><strong>Format name</strong></dt>
|
|
|
|
<dd>INPUT; CHAR(8)
|
|
|
|
<p>The format of the Cluster Resource Services information to be changed. The
|
|
possible format names are:</p>
|
|
|
|
<table cellpadding="5">
|
|
<!-- cols="25 75" -->
|
|
<tr>
|
|
<td align="left" valign="top"><em><a href="#crsc0100">CRSC0100</a></em></td>
|
|
<td align="left" valign="top">Automatic tuning to a level of high, low or
|
|
normal heartbeat intervals and message timeout values for cluster performance
|
|
and configuration parameters.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top"><em><a href="#crsc0200">CRSC0200</a></em></td>
|
|
<td align="left" valign="top">Manually tune one or more of the cluster
|
|
performance and configuration parameters.<br>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<br>
|
|
</dd>
|
|
|
|
<dt><strong>Results information</strong></dt>
|
|
|
|
<dd>INPUT; CHAR(30)
|
|
|
|
<p>A library qualified user queue name followed by a reserved field.</p>
|
|
|
|
<p>Library qualified user queue: A user queue, which exists on the node from
|
|
which the API was called, that receives results information after the function
|
|
has completed on all active nodes in the cluster. See the <a href=
|
|
"#usage_notes">Usage Notes</a> section of this API for a description of the
|
|
data that is placed on this queue. This is a 20 character field. The first 10
|
|
characters contain the user queue name and the second 10 characters contain the
|
|
user queue library name. No special values are supported. QTEMP, *LIBL, and
|
|
*CURLIB are not valid for the library name. The attributes of this user queue
|
|
must be keyed.</p>
|
|
|
|
<p>Reserved: The last 10 characters of results information are reserved and
|
|
must be set to hexadecimal zero.</p>
|
|
</dd>
|
|
|
|
<dt><strong>Error code</strong></dt>
|
|
|
|
<dd>I/O; CHAR(*)
|
|
|
|
<p>The structure in which to return error information. For the format of the
|
|
structure, see <a href="../apiref/error.htm#hdrerrcod">Error Code Parameter</a>.</p>
|
|
</dd>
|
|
</dl>
|
|
|
|
<br>
|
|
<h3><a name="crsc0100">CRSC0100 Format</a></h3>
|
|
|
|
<table border width="80%">
|
|
<tr>
|
|
<th align="center" valign="bottom" colspan="2">Offset</th>
|
|
<th align="left" valign="bottom" rowspan="2">Type</th>
|
|
<th align="left" valign="bottom" rowspan="2">Field</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<th align="center" valign="bottom">Dec</th>
|
|
<th align="center" valign="bottom">Hex</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top" width="10%">0</td>
|
|
<td align="center" valign="top" width="10%">0</td>
|
|
<td align="left" valign="top" width="20%">BINARY(4)</td>
|
|
<td align="left" valign="top" width="60%">Configuration tuning level</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<br>
|
|
<br>
|
|
<h3><a name="crsc0200">CRSC0200 Format</a></h3>
|
|
|
|
<table border width="80%">
|
|
<tr>
|
|
<th align="center" valign="bottom" colspan="2">Offset</th>
|
|
<th align="left" valign="bottom" rowspan="2">Type</th>
|
|
<th align="left" valign="bottom" rowspan="2">Field</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<th align="center" valign="bottom">Dec</th>
|
|
<th align="center" valign="bottom">Hex</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top" width="10%">0</td>
|
|
<td align="center" valign="top" width="10%">0</td>
|
|
<td align="left" valign="top" width="20%">BINARY(8)</td>
|
|
<td align="left" valign="top" width="60%">Receive/send heartbeat timer
|
|
ratio</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">8</td>
|
|
<td align="center" valign="top">8</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Maximum retry timer ratio</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">16</td>
|
|
<td align="center" valign="top">10</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Send heartbeat interval</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">24</td>
|
|
<td align="center" valign="top">18</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Retry timer value</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">32</td>
|
|
<td align="center" valign="top">20</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">CDAT protocol timeout interval</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">40</td>
|
|
<td align="center" valign="top">28</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Cluster recovery interval</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">48</td>
|
|
<td align="center" valign="top">30</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Maximum retry time</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">56</td>
|
|
<td align="center" valign="top">38</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Message fragment size</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">64</td>
|
|
<td align="center" valign="top">40</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Send queue overflow</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">72</td>
|
|
<td align="center" valign="top">48</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Number of bad messages threshold</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">80</td>
|
|
<td align="center" valign="top">50</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Number of ack messages threshold</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">88</td>
|
|
<td align="center" valign="top">58</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Unreachable heartbeat ack threshold</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">96</td>
|
|
<td align="center" valign="top">60</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Reachable heartbeat ack threshold</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">104</td>
|
|
<td align="center" valign="top">68</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Unreachable heartbeat threshold</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">112</td>
|
|
<td align="center" valign="top">70</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Reachable heartbeat threshold</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">120</td>
|
|
<td align="center" valign="top">78</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Delayed ack timer</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">128</td>
|
|
<td align="center" valign="top">80</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Message send window</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">136</td>
|
|
<td align="center" valign="top">88</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Enable multicast</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">144</td>
|
|
<td align="center" valign="top">90</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Performance class</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">152</td>
|
|
<td align="center" valign="top">98</td>
|
|
<td align="left" valign="top">BINARY(8)</td>
|
|
<td align="left" valign="top">Ack remote fragments</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<br>
|
|
<h3>Field Descriptions</h3>
|
|
|
|
<p><strong>Note:</strong> Specify -1 on any parameters that are not changed.
|
|
This pertains to format CRSC0200 only.</p>
|
|
|
|
<p><strong>Note:</strong> Units and ranges for the fields described here may be
|
|
found in the Field Settings Range Table located at the end of this Field
|
|
Descriptions section of this document.</p>
|
|
|
|
<p><strong>Ack remote fragments.</strong> Provides a switch to enable or
|
|
disable a cluster messaging level acknowledgment for receipt of each fragment
|
|
sent to a remote cluster node. Fragments are sent by the cluster messaging
|
|
service for each cluster message whose size is greater than the specified
|
|
Message fragment size. Remote cluster nodes are defined to be any nodes not on
|
|
the local LAN (having a network or subnet IP address other than that of the
|
|
source node for the message). ACKing remote fragments may be desirable in those
|
|
few cases where low bandwidth gateways, routers, or bridges exist between local
|
|
and remote systems.</p>
|
|
|
|
<p><strong>CDAT protocol timeout interval.</strong> The timeout value used for
|
|
distributing the Cluster Destination Address Table (CDAT) and synchronizing
|
|
cluster communications when doing a create cluster, add node, or start node
|
|
process. As the number of nodes in the cluster increases, the time required to
|
|
run this synchronizing protocol increases. This is a low level Cluster Resoure Services start-up protocol.</p>
|
|
|
|
<p><strong>Cluster recovery interval.</strong> The interval at which a cluster
|
|
node takes inventory of required recovery actions and attempts automatic
|
|
recovery as necessary. Those items checked are:</p>
|
|
|
|
<ul>
|
|
<li>Unreachable alternate point-point interface addresses for remote
|
|
nodes.</li>
|
|
|
|
<li>Unreachable multicast IP address for the local subnet.</li>
|
|
|
|
<li>Partitioned nodes.</li>
|
|
</ul>
|
|
|
|
<p><strong>Configuration tuning level.</strong> Provides for a simple way to
|
|
set cluster performance and configuration parameters. The valid values for this
|
|
field are:</p>
|
|
|
|
<table cellpadding="5">
|
|
<!-- cols="5 95" -->
|
|
<tr>
|
|
<td align="left" valign="top"><em>1</em></td>
|
|
<td align="left" valign="top">Adjustments are made to cluster communications to
|
|
<img src="delta.gif" alt="Start of change">
|
|
decrease<img src="deltaend.gif" alt="End of change"> the
|
|
heartbeating <img src="delta.gif" alt="Start of change">frequency
|
|
<img src="deltaend.gif" alt="End of change"> and increase the various message timeout
|
|
values. With fewer heartbeats and longer timeout values, the cluster will be
|
|
slower to respond (less sensitive) to communications failures.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top"><em>2</em></td>
|
|
<td align="left" valign="top">Default values are used for cluster
|
|
communications performance and configuration parameters. This setting may be
|
|
used to return all parameters to the original default values.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top"><em>3</em></td>
|
|
<td align="left" valign="top">Adjustments are made to cluster communications to
|
|
<img src="delta.gif" alt="Start of change">increase
|
|
<img src="deltaend.gif" alt="End of change">
|
|
the heartbeating
|
|
<img src="delta.gif" alt="Start of change">frequency
|
|
<img src="deltaend.gif" alt="End of change">
|
|
and decrease
|
|
the various message timeout
|
|
values. With more frequent heartbeats and shorter timeout values, the cluster
|
|
will be quicker to respond (more sensitive) to communications failures.</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p><strong>Delayed ack timer.</strong> The timer used over inbound reliable
|
|
messages to force an acknowledgment for unacknowledged messages should the
|
|
sender not have requested an acknowledgment over the last delayed ack time
|
|
period. This timer is started on receipt of a reliable message and stopped when
|
|
an acknowledgment is sent for one or more unacknowledged messages.</p>
|
|
|
|
<p><strong>Enable multicast.</strong> The cluster communications infrastructure
|
|
makes use of User Datagram Protocol (UDP) multicast capabilities as the
|
|
preferred protocol for sending cluster management information between nodes in
|
|
a cluster. Where multicast capabilities are supported by the underlying
|
|
physical media, cluster communications will utilize the UDP multicast to send
|
|
management messaging from a given node to all local cluster nodes supporting
|
|
the same subnet address. Messages being sent to nodes on remote networks will
|
|
always be sent using UDP point to point capabilities. Cluster communications
|
|
does not rely on routing capability of multicast messages.</p>
|
|
|
|
<p>The multicast traffic supporting cluster management messaging tends by
|
|
nature to be bursty. Depending on the number of nodes on a given LAN
|
|
(supporting a common subnet address) and the complexity of the cluster
|
|
management structure that is chosen by the cluster administrator, cluster
|
|
related multicast packets can easily exceed 40 packets/second. Bursts of this
|
|
nature could have a negative impact on older networking equipment. One example
|
|
would be congestion problems on devices on the LAN serving as Simple Network
|
|
Management Protocol (SNMP) agents which need to evaluate each and every UDP
|
|
multicast packet. Some of the earlier networking equipment does not have
|
|
adequate bandwidth to keep up with this type of traffic. Insure that the
|
|
network administrator has reviewed the capacity of the networks to handle UDP
|
|
multicast traffic to make certain that clustering will not have a negative
|
|
impact on the health and performance of the networks over which it is chosen to
|
|
operate.</p>
|
|
|
|
<p>If the network does not wish to have the more efficient multicast
|
|
capabilities used, setting this field to FALSE (0) will disable the multicast
|
|
capabilities of the cluster and only point to point communications will be used
|
|
by the cluster messaging services.</p>
|
|
|
|
<p><strong>Maximum retry time.</strong> Reliable messages are resent at
|
|
exponentially increasing times should they timeout (that is, not receive a timely
|
|
acknowledgment). The initial timeout value for a message is the Retry Timer
|
|
Value and each successive retry builds up by a factor of 2 until the Maximum
|
|
retry timer value is exceeded. For the default cases, a message would be sent,
|
|
resent 1 second later, then 2 seconds, 4 seconds, and finally 8 seconds. This
|
|
represents a total of 15 seconds following which attempts to use alternate
|
|
internet addressing are tried with the same timer values.</p>
|
|
|
|
<p><strong>Maximum retry timer ratio.</strong> Remote subnets (remote cluster
|
|
nodes on another LAN/WAN/BUS supporting a different subnet interface address
|
|
than the sending node) use an extended message timeout value which is based
|
|
from the Maximum retry time used for local subnets (local cluster nodes
|
|
supporting the same subnet interface address). For the default case, the
|
|
Maximum retry time for a local multicast message would be 8 seconds and for a
|
|
remote point to point message would be 8 x 8 = 64 seconds. This allows for
|
|
network routing considerations.</p>
|
|
|
|
<p><strong>Message fragment size.</strong> Cluster communications fragments its
|
|
own messages. This fragment size should be set consistent with the physical
|
|
media and routing capabilities throughout the network used for clustering. The
|
|
preferred settings allow for the largest fragment size possible that does not
|
|
exceed any of the hardware Maximum Transmission Units defined over the entire
|
|
path so that clustering does all of the fragmentation, not the intermediary
|
|
networks. The default is set to assume a minimum 1500 byte (less network header
|
|
space) Ethernet environment.</p>
|
|
|
|
<p><strong>Message send window.</strong> The number of messages allowed
|
|
outstanding without having received an acknowledgment. The higher the number,
|
|
the lower the message latency but the larger the required buffer space on a
|
|
node to save inbound messages.</p>
|
|
|
|
<p><strong>Number of ack messages threshold.</strong> The number of repeat
|
|
messages that are received over the course of a cluster recovery interval
|
|
before acknowledgments are sent to multiple source interface addresses for a
|
|
given node instead of just the current primary address for each message
|
|
received. While increasing the number of ACKs flowing, this reduces the message
|
|
resends and latency given that an intermittent communications condition is
|
|
detected. Eventually, one of the node addresses should be marked as failed and
|
|
at cluster recovery time, messaging will settle back down using single
|
|
acknowledgments.</p>
|
|
|
|
<p><strong>Number of bad messages threshold.</strong> The number of
|
|
undeliverable messages per Cluster recovery interval allowed before a failing
|
|
status is assigned to a node's interface address. At this time, a secondary
|
|
address (if available) is assigned to be the new primary interface address for
|
|
the subject remote node.</p>
|
|
|
|
<p><strong>Performance class.</strong> The requested performance
|
|
characteristics of the cluster communications messaging protocol. Pacing is
|
|
selectively used for sending out fragments of large messages. Messages are
|
|
fragmented by the cluster messaging service at the specified message fragment
|
|
size. The pacing mechanism releases a set number of fragments to the underlying
|
|
physical layer, then delays, then releases a next set. This is to avoid over
|
|
running slower physical media. Local here refers to nodes on a local LAN.
|
|
Remote refers to messaging to cluster nodes on other than the local LAN. Valid
|
|
values for the performance class are as follows:</p>
|
|
|
|
<table cellpadding="5">
|
|
<!-- cols="5 95" -->
|
|
<tr>
|
|
<td align="left" valign="top"><em>0</em></td>
|
|
<td align="left" valign="top">Normal: Pacing applied to local and remote
|
|
fragments.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top"><em>1</em></td>
|
|
<td align="left" valign="top">High Throughput Local: Pacing applied to remote
|
|
fragments.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top"><em>2</em></td>
|
|
<td align="left" valign="top">High Throughput Local and Remote: No pacing of
|
|
any fragmented messages.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top"><em>3</em></td>
|
|
<td align="left" valign="top">High Throughput Remote: Pacing applied to local
|
|
fragments.</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p><strong>Reachable heartbeat ack threshold.</strong> A node becomes reachable
|
|
(formerly having been marked as unreachable) from a Cluster Communications
|
|
heartbeating perspective if "Reachable heartbeat ack threshold" (or greater)
|
|
heartbeat message ACKs are received for the last "Reachable heartbeat
|
|
threshold" heartbeat messages sent to a node. For the default case, a node
|
|
becomes reachable if 3 or more of the last four heartbeats sent to the marked
|
|
unreachable node are now acknowledged.</p>
|
|
|
|
<p><strong>Reachable heartbeat threshold.</strong> See Reachable heartbeat ack
|
|
threshold field description.</p>
|
|
|
|
<p><strong>Receive/send heartbeat timer ratio.</strong> Ratio of incoming
|
|
heartbeat messages expected from a neighboring node to the number of heartbeat
|
|
messages that are sent out. The send rate is always set higher to insure a
|
|
neighboring node's receive heartbeat timer does not fire under normal
|
|
operational circumstances.</p>
|
|
|
|
<p><strong>Retry timer value.</strong> See Maximum retry time field
|
|
description.</p>
|
|
|
|
<p><strong>Send heartbeat interval.</strong> The interval at which a low level
|
|
Cluster Communications heartbeat message is sent to a neighboring node.</p>
|
|
|
|
<p><strong>Send queue overflow.</strong> The maximum number of messages that
|
|
are allowed to be queued up in a Cluster Communications outbound message queue.
|
|
The cluster communication send queues are distributed amongst the various
|
|
groups. The larger the number, the greater the memory resources that are
|
|
required to support cluster messaging. If a send queue overflow is hit for a
|
|
given group, the inability to send a message could lead to the termination of
|
|
that group resulting from the lack of resources on a node.</p>
|
|
|
|
<p><strong>Unreachable heartbeat ack threshold.</strong> A reachable node
|
|
becomes unreachable from a cluster communications heartbeating perspective if
|
|
"Unreachable heartbeat ack threshold" heartbeat message ACKs (or less) are
|
|
received for the last "Unreachable heartbeat threshold" heartbeat messages sent
|
|
to a node. For the default case, a node becomes unreachable if one or less of
|
|
the last four heartbeats sent to the marked reachable node are
|
|
acknowledged.</p>
|
|
|
|
<p><strong>Unreachable heartbeat threshold.</strong> See Unreachable heartbeat
|
|
ack threshold field description.</p>
|
|
|
|
<br>
|
|
<h3><a name="crsc0200">Field Settings For CRSC0200 Format</a></h3>
|
|
|
|
<table border width="80%">
|
|
<tr>
|
|
<th align="left" valign="top"> </th>
|
|
<th align="CENTER" valign="top" colspan="3">Configuration Tuning Level</th>
|
|
<th align="left" valign="top"> </th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<th align="left" valign="top">Field</th>
|
|
<th align="CENTER" valign="top">1</th>
|
|
<th align="CENTER" valign="top">2</th>
|
|
<th align="CENTER" valign="top">3</th>
|
|
<th align="left" valign="top">Unit</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top" width="50%">Receive/send heartbeat timer
|
|
ratio</td>
|
|
<td align="center" valign="top" width="10%">4</td>
|
|
<td align="center" valign="top" width="10%">2</td>
|
|
<td align="center" valign="top" width="10%">2</td>
|
|
<td align="left" valign="top" width="20%">unitless</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Maximum retry timer ratio</td>
|
|
<td align="center" valign="top">8</td>
|
|
<td align="center" valign="top">8</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="left" valign="top">unitless</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Send heartbeat interval</td>
|
|
<td align="center" valign="top">6</td>
|
|
<td align="center" valign="top">3</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="left" valign="top">seconds</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Retry timer value</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="left" valign="top">seconds</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CDAT protocol timeout interval</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="left" valign="top">minutes</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Cluster recovery interval</td>
|
|
<td align="center" valign="top">30</td>
|
|
<td align="center" valign="top">15</td>
|
|
<td align="center" valign="top">10</td>
|
|
<td align="left" valign="top">minutes</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Maximum retry time</td>
|
|
<td align="center" valign="top">16</td>
|
|
<td align="center" valign="top">8</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="left" valign="top">seconds</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Message fragment size</td>
|
|
<td align="center" valign="top">1,464</td>
|
|
<td align="center" valign="top">1,464</td>
|
|
<td align="center" valign="top">1,464</td>
|
|
<td align="left" valign="top">bytes</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Send queue overflow</td>
|
|
<td align="center" valign="top">1,024</td>
|
|
<td align="center" valign="top">1,024</td>
|
|
<td align="center" valign="top">1,024</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Number of bad messages threshold</td>
|
|
<td align="center" valign="top">5</td>
|
|
<td align="center" valign="top">3</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Number of ack messages threshold</td>
|
|
<td align="center" valign="top">20</td>
|
|
<td align="center" valign="top">10</td>
|
|
<td align="center" valign="top">5</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Unreachable heartbeat ack threshold</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Reachable heartbeat ack threshold</td>
|
|
<td align="center" valign="top">3</td>
|
|
<td align="center" valign="top">3</td>
|
|
<td align="center" valign="top">3</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Unreachable heartbeat threshold</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Reachable heartbeat threshold</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Delayed ack timer</td>
|
|
<td align="center" valign="top">300</td>
|
|
<td align="center" valign="top">100</td>
|
|
<td align="center" valign="top">50</td>
|
|
<td align="left" valign="top">milliseconds</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Message send window</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Enable multicast</td>
|
|
<td align="center" valign="top">TRUE(1)</td>
|
|
<td align="center" valign="top">TRUE(1)</td>
|
|
<td align="center" valign="top">TRUE(1)</td>
|
|
<td align="left" valign="top">unitless</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Performance class</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="left" valign="top">unitless</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Ack remote fragments</td>
|
|
<td align="center" valign="top">FALSE(0)</td>
|
|
<td align="center" valign="top">FALSE(0)</td>
|
|
<td align="center" valign="top">FALSE(0)</td>
|
|
<td align="left" valign="top">unitless</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<br>
|
|
<br>
|
|
<h3><a name="fldset">Field Settings Range</a></h3>
|
|
|
|
<table border width="80%">
|
|
<tr>
|
|
<th align="left" valign="top">Field</th>
|
|
<th align="CENTER" valign="top">Minimum</th>
|
|
<th align="CENTER" valign="top">Default</th>
|
|
<th align="CENTER" valign="top">Maximum</th>
|
|
<th align="left" valign="top">Unit</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Receive/send heartbeat timer ratio</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="left" valign="top">unitless</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Maximum retry timer ratio</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="center" valign="top">8</td>
|
|
<td align="center" valign="top">8</td>
|
|
<td align="left" valign="top">unitless</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Send heartbeat interval</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="center" valign="top">3</td>
|
|
<td align="center" valign="top">10</td>
|
|
<td align="left" valign="top">seconds</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Retry timer value</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="left" valign="top">seconds</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CDAT protocol timeout interval</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">5</td>
|
|
<td align="left" valign="top">minutes</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Cluster recovery interval</td>
|
|
<td align="center" valign="top">5</td>
|
|
<td align="center" valign="top">15</td>
|
|
<td align="center" valign="top">60</td>
|
|
<td align="left" valign="top">minutes</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Maximum retry time</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="center" valign="top">8</td>
|
|
<td align="center" valign="top">16</td>
|
|
<td align="left" valign="top">seconds</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Message fragment size</td>
|
|
<td align="center" valign="top">540</td>
|
|
<td align="center" valign="top">1,464</td>
|
|
<td align="center" valign="top">32,500</td>
|
|
<td align="left" valign="top">bytes</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Send queue overflow</td>
|
|
<td align="center" valign="top">512</td>
|
|
<td align="center" valign="top">1,024</td>
|
|
<td align="center" valign="top">4,096</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Number of bad messages threshold</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">3</td>
|
|
<td align="center" valign="top">50</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Number of ack messages threshold</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">10</td>
|
|
<td align="center" valign="top">25</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Unreachable heartbeat ack threshold</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="center" valign="top">m</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Reachable heartbeat ack threshold</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="center" valign="top">3</td>
|
|
<td align="center" valign="top">n</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Unreachable heartbeat threshold</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="center" valign="top">16</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Reachable heartbeat threshold</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="center" valign="top">16</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Delayed ack timer</td>
|
|
<td align="center" valign="top">50</td>
|
|
<td align="center" valign="top">100</td>
|
|
<td align="center" valign="top">300</td>
|
|
<td align="left" valign="top">milliseconds</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Message send window</td>
|
|
<td align="center" valign="top">1</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">8</td>
|
|
<td align="left" valign="top">messages</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Enable multicast</td>
|
|
<td align="center" valign="top">FALSE(0)</td>
|
|
<td align="center" valign="top">TRUE(1)</td>
|
|
<td align="center" valign="top">TRUE(1)</td>
|
|
<td align="left" valign="top">unitless</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Performance class</td>
|
|
<td align="center" valign="top">0</td>
|
|
<td align="center" valign="top">2</td>
|
|
<td align="center" valign="top">3</td>
|
|
<td align="left" valign="top">unitless</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">Ack remote fragments</td>
|
|
<td align="center" valign="top">FALSE(0)</td>
|
|
<td align="center" valign="top">FALSE(0)</td>
|
|
<td align="center" valign="top">TRUE(1)</td>
|
|
<td align="left" valign="top">unitless</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<br>
|
|
<h3><a name="usage_notes">Usage Notes</a></h3>
|
|
|
|
<h4>Results Information User Queue</h4>
|
|
|
|
<p>Asynchronous results are returned to a user queue specified by the Results
|
|
Information parameter of the API. See <a href="clust1a4.htm">Cluster APIs Use of User Queues</a>
|
|
and <a href="clust1a5.htm">Using Results Information</a> for details on how to create the
|
|
results information user queue, the format of the entries, and how to use the
|
|
data placed on the queue. The data is sent to the user queue in the form of a
|
|
message identifier and the substitution data for the message (if any exists).
|
|
The following identifies the data sent to the user queue (excluding the message
|
|
text).</p>
|
|
|
|
<table width="100%" cellpadding="5">
|
|
<!-- cols="15 85" -->
|
|
<tr>
|
|
<th align="left" valign="top">Message ID</th>
|
|
<th align="left" valign="top">Message Text</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td width="15%" valign="top">CPCBB01 C</td>
|
|
<td width="85%" valign="top">Cluster Resource Services API &1
|
|
completed.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPFBB24 D</td>
|
|
<td align="left" valign="top">Node &1 not participating in &2 API protocol.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPFBB2D D</td>
|
|
<td align="left" valign="top">Timeout detected while waiting for a response.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPFBB46 D</td>
|
|
<td align="left" valign="top">Cluster Resource Services internal error.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPFBB4D D</td>
|
|
<td align="left" valign="top">Cluster Resource Services cannot process the request.</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<br>
|
|
<br>
|
|
<h3>Error Messages</h3>
|
|
|
|
<p>Messages that are delivered
|
|
through the error code parameter are listed here. The data (messages) sent to
|
|
the results information user queue are listed in the <a href=
|
|
"#usage_notes">Usage Notes</a> above.</p>
|
|
|
|
<table width="100%" cellpadding="5">
|
|
<!-- cols="15 85" -->
|
|
<tr>
|
|
<th align="left" valign="top">Message ID</th>
|
|
<th align="left" valign="top">Error Message Text</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF2113 E</td>
|
|
<td align="left" valign="top">Cannot allocate library &1.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF3C1E E</td>
|
|
<td align="left" valign="top">Required parameter &1 omitted.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF3C21 E</td>
|
|
<td align="left" valign="top">Format name &1 is not valid.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF3C39 E</td>
|
|
<td align="left" valign="top">Value for reserved field not valid.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF3CF1 E</td>
|
|
<td align="left" valign="top">Error code parameter not valid.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF3CF2 E</td>
|
|
<td align="left" valign="top">Error(s) occurred during running of &1 API.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9801 E</td>
|
|
<td align="left" valign="top">Object &2 in library &3 not found.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9802 E</td>
|
|
<td align="left" valign="top">Not authorized to object &2 in &3.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9804 E</td>
|
|
<td align="left" valign="top">Object &2 in library &3 damaged.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF980C E</td>
|
|
<td align="left" valign="top">Object &1 in library &2 cannot be in an independent
|
|
auxiliary storage pool.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9810 E</td>
|
|
<td align="left" valign="top">Library &1 not found.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9820 E</td>
|
|
<td align="left" valign="top">Not authorized to use library &1.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9872 E</td>
|
|
<td align="left" valign="top">Program or service program &1 in library &2 ended.
|
|
Reason code &3.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPFBB02 E</td>
|
|
<td align="left" valign="top">Cluster &1 does not exist.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPFBB26 E</td>
|
|
<td align="left" valign="top">Cluster Resource Services not active or not responding.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPFBB32 E</td>
|
|
<td align="left" valign="top">Attributes of user queue &1 in library &2 are not
|
|
valid.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPFBB39 E</td>
|
|
<td align="left" valign="top">Current user does not have IOSYSCFG special authority.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPFBB44 E</td>
|
|
<td align="left" valign="top">&1 API cannot be called from a cluster resource group exit
|
|
program.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPFBB46 E</td>
|
|
<td align="left" valign="top">Cluster Resource Services internal error.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPFBB5F E</td>
|
|
<td align="left" valign="top">Field value within structure is not valid.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPFBB70 E</td>
|
|
<td align="left" valign="top">API request &1 not compatible with current cluster
|
|
version.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPFBB86 E</td>
|
|
<td align="left" valign="top">Length specified in parameter &1 not valid.</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<br>
|
|
|
|
|
|
<hr>
|
|
API introduced: V5R1
|
|
|
|
<hr>
|
|
<center>
|
|
<table cellpadding="2" cellspacing="2">
|
|
<tr align="center">
|
|
<td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a href=
|
|
"clust1a1.htm">Cluster APIs</a> | <a href="aplist.htm">APIs by
|
|
category</a></td>
|
|
</tr>
|
|
</table>
|
|
</center>
|
|
</body>
|
|
</html>
|
|
|