ibm-information-center/dist/eclipse/plugins/i5OS.ic.apis_5.4.0.1/clrgstcrg.htm

844 lines
26 KiB
HTML
Raw Normal View History

2024-04-02 14:02:31 +00:00
<!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>Start Cluster Resource Group (QcstStartClusterResourceGroup) API</title>
<!-- Begin Header Records ========================================== -->
<!-- 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 -->
<!-- CLUST3A SCRIPT A converted by B2H R4.1 (346) (CMS) by NLJONES at -->
<!-- RCHVMX on 24 Feb 1999 at 17:23:22 -->
<!-- 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>Start Cluster Resource Group (QcstStartClusterResourceGroup) API</h2>
<div class="box" style="width: 70%;">
<br>
&nbsp;&nbsp;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 group name</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(10)</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="left" valign="top">Exit program data</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(256)</td>
</tr>
<tr>
<td align="center" valign="top">5</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">6</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>
&nbsp;&nbsp;Service Program: QCSTCRG2<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Default Public Authority: *EXCLUDE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: Yes<br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The Start Cluster Resource Group (QcstStartClusterResourceGroup) API will enable resiliency for the
specified cluster resource group. The Start Cluster Resource Group API can be
used to change cluster resource group from a status of Indoubt (30) or Inactive
(20) to Active (10). </p>
<p>This API will do the following for all cluster resource group types:</p>
<ol>
<li>Set the cluster resource group status to Start Cluster Resource Group
Pending (560).</li>
<li><img src="delta.gif" alt="Start of change">For primary-backup model
cluster resource groups,<img src="deltaend.gif" alt="End of change"> if the current recovery domain has more than one backup node and some
backup nodes are not active, the recovery domain may be reordered so that all
active backup nodes are ordered before inactive backup nodes. If the inactive
backup nodes are already ordered after active backup nodes or if there are no
inactive backup nodes, Start will not change the recovery domain.</li>
<li>Call the exit program on all active nodes in the recovery domain with an
action code of Start (2), if an exit program is specified for the cluster
resource group.</li>
<li>Set the cluster resource group status to Active (10) if the exit program is
successful on all active nodes in the recovery domain.</li>
<li>Perform the following on all nodes if the exit program is unsuccessful on
any active node in the recovery domain:
<ul>
<li>Set the status of the cluster resource group to Indoubt (30).</li>
</ul>
</li>
</ol>
<p>This API will do the following for resilient application cluster resource
groups:</p>
<ol>
<li>Verify the takeover IP address has been configured on all nodes in the
recovery domain except replicates.</li>
<li>Start the takeover IP address on the primary node.</li>
<li>If the exit program returns a failure, on the primary node:
<ul>
<li>Cancel the exit program job with an option of *IMMED.</li>
<li>End the takeover IP address on the primary node.</li>
</ul>
</li>
</ol>
<P><img src="delta.gif" alt="Start of change">
This API will do the following for peer cluster resource
groups:
<OL>
<li>All nodes that
are designated with a peer role will be an active access point upon successful
completion of this API.<img src="deltaend.gif" alt="End of change"> </li>
</OL>
<p>This API requires the following for all cluster resource group types:</p>
<ol>
<li>Cluster Resource Services active on the node running the API.</li>
<li><img src="delta.gif" alt="Start of change">For primary-backup model
cluster resource groups, the
membership<img src="deltaend.gif" alt="End of change"> status of the node currently assigned the role of primary must be
active.</li>
<li><img src="delta.gif" alt="Start of change">For peer model
cluster resource groups:
<ul>
<li>At least one node must be designated as peer or the cluster
resource group cannot be started.
<li>At least one peer node must have a membership status of Active.
<img src="deltaend.gif" alt="End of change"></li>
</ul>
<li>A cluster resource group status of Inactive (20) or Indoubt(30).</li>
</ol>
<p>This API requires the following for resilient device cluster resource
groups:</p>
<ol>
<li>The cluster resource group must have at least one configuration object
entry.</li>
<li>The configuration objects specified for the cluster resource group must
exist on all active nodes in the recovery domain and the resource name
specified in a configuration object must be the same on all active nodes in the
recovery domain.</li>
<li>If a data base name has been
specified for a configuration object, it must be the same on all active nodes
in the recovery domain.</li>
<li>If a server takeover IP address is specified, it must exist on all nodes in
the recovery domain. </li>
<li>The primary node must be the current owner of all IOPs or high-speed link
I/O bridges for the devices in the cluster resource group.</li>
<li>Hardware configuration must be complete so that the physical hardware has
been associated with the configuration object. In particular for auxiliary
storage pools, the disk units must have been assigned.</li>
<li>The IOP or high-speed link I/O bridge controlling the devices specified in
the cluster resource group must be accessible by all active nodes in the
cluster resource group's recovery domain
or by all nodes within the same site (for cross-site mirroring).
</li>
<li>Starting the cluster
resource group will not vary on the configuration objects or start the server
takeover IP address.</li>
<li>All members of an auxiliary storage pool group must be configured in the
cluster resource group.</li>
<li>A value of 2 for the device's 'configuration object online' attribute can
be specified only for a secondary auxiliary storage pool.</li>
<li>If data port IP addresses are specified, it must exist on the node in
the recovery domain. </li>
</ol>
<p><img src="delta.gif" alt="Start of change">This API requires the following
for application cluster resource groups:<img src="deltaend.gif" alt="End of change"></p>
<ol>
<li>For an application cluster resource group, the exit program is not expected
to complete on the primary node. The status of the cluster resource group will
be set to Active (10) when the exit program job has been started on the primary
and the exit program has completed successfully on all other nodes in the
recovery domain.
</ol>
<p>This API operates in an asynchronous mode. See <a href="clust1a3.htm">
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.</p>
<br>
<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>Cluster Resource Group Authority</em></dt>
<dd>*CHANGE</dd>
<dt><em>Cluster Resource Group Library Authority</em></dt>
<dd>*EXECUTE</dd>
<dt><em>Cluster Resource Group Lock</em></dt>
<dd>*EXCL</dd>
<dt><em>Exit Program Authority <img src="delta.gif" alt="Start of change"> (applies
to user profile calling the API and user
profile to run the exit program)<img src="deltaend.gif" alt="End of change"> </em></dt>
<dd>*EXECUTE</dd>
<dt><em>Exit Program Library Authority <img src="delta.gif" alt="Start of change"> (applies to user profile calling the API and user
profile to run the exit program)<img src="deltaend.gif" alt="End of change"> </em></dt>
<dd>*EXECUTE</dd>
<dt><em>User Profile Authority <img src="delta.gif" alt="Start of change">(applies to
user profile to run the exit program)<img src="deltaend.gif" alt="End of change"></em></dt>
<dd>*USE</dd>
<dt><em>Request Information User Queue Authority</em></dt>
<dd>*OBJOPR, *ADD</dd>
<dt><em>Request Information User Queue Library Authority</em></dt>
<dd>*EXECUTE</dd>
<dt><em>Request Information User Queue Lock</em></dt>
<dd>*EXCLRD</dd>
<dt><em>Configuration Object Authority</em></dt>
<dd>*USE and *OBJMGT</dd>
<dt><img src="delta.gif" alt="Start of change"><em>Configuration Object Lock</em></dt>
<dd>*EXCLRD<img src="deltaend.gif" alt="End of change"></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 containing the cluster resource group.</p>
</dd>
<dt><strong>Cluster resource group name</strong></dt>
<dd>INPUT; CHAR(10)
<p>The name of the cluster resource group which will be started.</p>
</dd>
<dt><strong>Exit program data</strong></dt>
<dd>INPUT; CHAR(256)
<p>256 bytes of data that is passed to the cluster resource group exit program
when it is called. This parameter may contain any scalar data except pointers.
For example, it can be used to provide state information. This data will be
stored with the specified cluster resource group and copied to all nodes in the
recovery domain. Pointers in this area will not resolve correctly on all nodes
and should not be placed in the data. See <a href="clrgexit.htm">Cluster
Resource Group Exit Program</a> for information about the cluster resource
group exit program. The data specified will replace the existing exit program
data stored with the cluster resource group before the exit program is called.
If blanks are specified, then the exit program data stored with the cluster
resource group will be cleared. This parameter must be set to *SAME if no exit
program is specified. The following special value can be used:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>*SAME</em></td>
<td align="left" valign="top">The exit program data stored with the cluster
resource group specified will be passed to the exit program. This must be left
justified.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Results information</strong></dt>
<dd>INPUT; CHAR(30)
<p>This parameter identifies a qualified user queue field and is followed by a
reserved field.</p>
<p>Qualified user queue: Completion information is returned to this user queue,
which exists on the node from which the API was called, after the function has
completed. 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, *CURLIB are
not valid library names. The attributes of this user queue must be keyed.
</p>
<p>Reserved: The last 10 characters of the 30-character results information are
reserved. Each character in this field 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="usage_notes">Usage Notes</a></h3>
<p><strong>Results Information User Queue</strong></p>
<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 &amp;1
completed.</td>
</tr>
<tr>
<td align="left" valign="top">CPF18BA D</td>
<td align="left" valign="top">Error occurred with subsystem.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2113 E</td>
<td align="left" valign="top">Cannot allocate library &amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2204 D</td>
<td align="left" valign="top">User profile &amp;1 not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9801 D</td>
<td align="left" valign="top">Object &amp;2 in library &amp;3 not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9802 D</td>
<td align="left" valign="top">Not authorized to object &amp;2 in &amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9803 D</td>
<td align="left" valign="top">Cannot allocate object &amp;2 in library &amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9804 D</td>
<td align="left" valign="top">Object &amp;2 in library &amp;3 damaged.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9810 D</td>
<td align="left" valign="top">Library &amp;1 not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB0A D</td>
<td align="left" valign="top">Node &amp;1 is not active in cluster &amp;2.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB0B D</td>
<td align="left" valign="top">Request using takeover IP address &amp;1 failed.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB0F D</td>
<td align="left" valign="top">Cluster resource group &amp;1 does not exist in cluster
&amp;2.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB17 D</td>
<td align="left" valign="top">&amp;1 API cannot be processed in cluster &amp;2.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB18 D</td>
<td align="left" valign="top">Request &amp;1 not allowed for cluster resource group
&amp;2.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB2C D</td>
<td align="left" valign="top">Attributes of exit program &amp;1 in library &amp;2 are not
valid.</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">CPFBB2E D</td>
<td align="left" valign="top">Job submission failed for cluster resource group &amp;1 in
cluster &amp;2.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB32 D</td>
<td align="left" valign="top">Attributes of user queue &amp;1 in library &amp;2 are not
valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB47 D</td>
<td align="left" valign="top">Cluster Resource Services ended abnormally.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB48 D</td>
<td align="left" valign="top">Cluster Resource Services error detected.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB5B D</td>
<td align="left" valign="top">Resource name &amp;1 incorrect for configuration object &amp;2
on node &amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB66 D</td>
<td align="left" valign="top">Request failed for device cluster resource group &amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB67 D</td>
<td align="left" valign="top">Ownership of hardware associated with configuration object
&amp;1 cannot be changed.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB68 D</td>
<td align="left" valign="top">Cluster resource group &amp;1 has no configuration object
entries.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB69 D</td>
<td align="left" valign="top">Primary node &amp;1 not current owner of configuration object
&amp;2.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB6C D</td>
<td align="left" valign="top">Hardware configuration is not complete.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB6E D</td>
<td align="left" valign="top">Exit program data cannot be specified.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB70 D</td>
<td align="left" valign="top">API request &amp;1 not compatible with current cluster
version.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB7B D</td>
<td align="left" valign="top">Device type incorrect for configuration object &amp;1 on node
&amp;2.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB80 D</td>
<td align="left" valign="top">Request failed for device cluster resource group &amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB90 D</td>
<td align="left" valign="top">Request failed for device cluster resource group &amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB92 D</td>
<td align="left" valign="top">Hardware resource &amp;1 not owned by node &amp;3 or node
&amp;4.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB98 D</td>
<td align="left" valign="top">Hardware resource &amp;1 not switchable.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB99 D</td>
<td align="left" valign="top">Request failed for device cluster resource group &amp;3. </td>
</tr>
<tr>
<td align="left" valign="top">CPFBB9A D</td>
<td align="left" valign="top">Online value not valid for device &amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB9B D</td>
<td align="left" valign="top">Auxiliary storage pool group member &amp;1 not specified.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB9E D</td>
<td align="left" valign="top">Data base name &amp;1 not correct for configuration object
&amp;2 on node &amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBBA6 E</td>
<td align="left" valign="top">Server takeover IP address cannot be associated with device
subtype &amp;1. </td>
</tr>
<tr>
<td align="left" valign="top">CPIBB10 D</td>
<td align="left" valign="top">Cluster resource group exit program &amp;1 in library &amp;2
on node &amp;3 failed.</td>
</tr>
<tr>
<td align="left" valign="top">TCP1B01 D</td>
<td align="left" valign="top">Unable to determine if &amp;1 interface started.</td>
</tr>
<tr>
<td align="left" valign="top">TCP1B02 D</td>
<td align="left" valign="top">Cannot determine if &amp;1 interface started.</td>
</tr>
<tr>
<td align="left" valign="top">TCP1B05 D</td>
<td align="left" valign="top">&amp;2 interface not started. Reason &amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">TCP1B10 D</td>
<td align="left" valign="top">&amp;2 interface not started.</td>
</tr>
<tr>
<td align="left" valign="top">TCP1B11 D</td>
<td align="left" valign="top">&amp;1 interface not started. Tried to exceed maximum number
of active interfaces allowed.</td>
</tr>
<tr>
<td align="left" valign="top">TCP1B12 D</td>
<td align="left" valign="top">&amp;1 interface not started. &amp;1 interface already
active.</td>
</tr>
<tr>
<td align="left" valign="top">TCP1B13 D</td>
<td align="left" valign="top">&amp;1 interface not started. &amp;1 interface not defined the
takeover IP configuration.</td>
</tr>
<tr>
<td align="left" valign="top">TCP1B14 D</td>
<td align="left" valign="top">&amp;1 interface not started. Line description &amp;2 not
found.</td>
</tr>
<tr>
<td align="left" valign="top">TCP1B15 D</td>
<td align="left" valign="top">Line description &amp;2 unusable. Internal errors
encountered.</td>
</tr>
<tr>
<td align="left" valign="top">TCP1B16 D</td>
<td align="left" valign="top">&amp;2 interface not started.</td>
</tr>
<tr>
<td align="left" valign="top">TCP1B25 D</td>
<td align="left" valign="top">&amp;1 interface not started.</td>
</tr>
<tr>
<td align="left" valign="top">TCP9999 D</td>
<td align="left" valign="top">Internal system error in program &amp;1.</td>
</tr>
</table>
<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 width="15%" valign="top">CPF2113 E</td>
<td width="85%" valign="top">Cannot allocate library &amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2204 E</td>
<td align="left" valign="top">User profile &amp;1 not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPF24B4 E</td>
<td align="left" valign="top">Severe error while addressing parameter list.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C1E E</td>
<td align="left" valign="top">Required parameter &amp;1 omitted.</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">CPF3CF2 E</td>
<td align="left" valign="top">Error(s) occurred during running of &amp;1 API.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9801 E</td>
<td align="left" valign="top">Object &amp;2 in library &amp;3 not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9802 E</td>
<td align="left" valign="top">Not authorized to object &amp;2 in &amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9803 E</td>
<td align="left" valign="top">Cannot allocate object &amp;2 in library &amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9804 E</td>
<td align="left" valign="top">Object &amp;2 in library &amp;3 damaged. </td>
</tr>
<tr>
<td align="left" valign="top">CPF980C E</td>
<td align="left" valign="top">Object &amp;1 in library &amp;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 &amp;1 not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9820 E</td>
<td align="left" valign="top">Not authorized to use library &amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB02 E</td>
<td align="left" valign="top">Cluster &amp;1 does not exist.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB0A E</td>
<td align="left" valign="top">Node &amp;1 is not active in cluster &amp;2.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB0F E</td>
<td align="left" valign="top">Cluster resource group &amp;1 does not exist in cluster
&amp;2.</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">CPFBB2C E</td>
<td align="left" valign="top">Attributes of exit program &amp;1 in library &amp;2 are not
valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB32 D</td>
<td align="left" valign="top">Attributes of user queue &amp;1 in library &amp;2 are not
valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBB38 E</td>
<td align="left" valign="top">Library name &amp;1 not allowed for this operation.</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">&amp;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">CPFBB6E E</td>
<td align="left" valign="top">Exit program data cannot be specified.</td>
</tr>
</table>
<br>
<hr>
API introduced: V4R4
<hr>
<center>
<table cellpadding="2" cellspacing="2" align="center">
<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>