Retrieve Cluster Information (QcstRetrieveClusterInfo) API


  Required Parameter Group:

1 Receiver variable Output Char(*)
2 Length of receiver variable Input Binary(4)
3 Format name Input Char(8)
4 Error code I/O Char(*)

  Service Program: QCSTCTL1

  Default Public Authority: *USE

  Threadsafe: Yes

The Retrieve Cluster Information (QcstRetrieveClusterInfo) API retrieves information about the clustering environment on a requesting node. The requesting node does not need to be active in the cluster to retrieve the information. However, some of the information will not be returned if the requesting node is not currently a member of a cluster and the requesting node was never activated. This API may be called from a cluster resource group exit program.


Authorities and Locks

None


Required Parameter Group

Receiver variable
OUTPUT; CHAR(*)

The receiver variable that receives the information requested. You can specify the size of the area to be smaller than the format requested as long as you specify the length parameter correctly. As a result, the API returns only the data that the area can hold.

Length of receiver variable
INPUT; BINARY(4)

The length of the receiver variable provided. The length of receiver variable parameter may be specified up to the size of the receiver variable specified in the user program. If the length of receiver variable parameter specified is larger than the allocated size of the receiver variable specified in the user program, the results are not predictable. The minimum length is 8 bytes.

Format name
INPUT; CHAR(8)

The content and format of the information that is returned. The possible format names are as follows:

RCLI0100 Cluster information

Error code
I/O; CHAR(*)

The structure in which to return error information. For the format of the structure, see Error code parameter.


RCLI0100 Format

Offset Type Field
Dec Hex
0 0 BINARY(4) Bytes returned
4 4 BINARY(4) Bytes available
8 8 CHAR(10) Cluster name
18 12 CHAR(8) Requesting node id
26 1A CHAR(2) Reserved
28 1C BINARY(4) Current cluster version
32 20 BINARY(4) Current cluster version modification level
36 24 BINARY(4) Potential node version
40 28 BINARY(4) Potential node version modification level
44 2C CHAR(10) Cluster message queue name
54 36 CHAR(10) Cluster message queue library name
64 40 BINARY(4) Failover wait time
68 44 BINARY(4) Failover default action


Field Descriptions

Bytes available. The number of bytes of data available to be returned to the user.

Bytes returned. The number of bytes of data returned to the user.

Cluster message queue library name. The name of the library that contains the message queue to receive cluster messages. This field will contain hexadecimal zeroes if no cluster message queue is specified.

Cluster message queue name. The name of the message queue to receive messages relating to cluster or node level events. For cluster version 6, messages relating to failover will be sent to this queue. This field will contain *NONE left justified and padded with blanks if no cluster message queue is specified.

Cluster name. The name of the cluster. If no cluster exists on the system, *NONE is returned.

Current cluster version. The version at which the nodes in the cluster are actively communicating with each other. This value in conjunction with the potential node version determines what nodes can join in the cluster. This value also determines the cluster's ability to use new functions supported by the node's potential node version. It is set when the cluster is created and can be changed by the Adjust Cluster Version (QcstAdjustClusterVersion) API. If no cluster exists, the field will be set to 0.

Current cluster version modification level. The modification level of the current cluster version. The modification level further identifies the version at which the nodes in the cluster communicate. It is updated when code changes that impact the version are applied to the system. If no cluster exists, the field will be set to 0.

Failover default action. Indicates what clustering should do when a response to the failover message on the cluster message queue was not received in the failover wait time limit. Valid values are:

0 Proceed with failover.
1 Do NOT attempt failover.

Failover wait time. Number of minutes to wait for a reply to the failover message that was enqueued on the cluster message queue. Valid values are:

-1 Wait forever until a response is given to the failover message.
0 Failover proceeds without user intervention. Acts the same as V5R4M0 and prior.
>=1 Number of minutes to wait for a response to the failover message. If no response is received in the specified number of minutes, the failover default action field will be looked at to decide how to proceed.

Potential node version. The version at which the node is capable of communicating with the other nodes in the cluster. This is the value associated with the cluster code installed on the node. It will be used to determine if the node can join a cluster.

Potential node version modification level. The modification level of the potential node version. The modification level further identifies the version at which the node is capable of communicating with the other nodes in the cluster. It is updated when code changes that impact the version are applied to the system and will also be used to determine if the node can join a cluster.

Requesting node id. The node id of the requesting cluster node. If no cluster exists or if the cluster has been created but never started on the system, *NONE is returned.

Reserved. This field will contain hexadecimal zeroes.

Error Messages

Messages that are delivered through the error code parameter are listed here.

Message ID Error Message Text
CPF3C1E E Required parameter &1 omitted.
CPF3C21 E Format name &1 is not valid.
CPF3C24 E Length of the receiver variable is not valid.
CPF3CF1 E Error code parameter not valid.
CPF3CF2 E Error(s) occurred during running of &1 API.
CPF9872 E Program or service program &1 in library &2 ended. Reason code &3.


API introduced: V5R1

[ Back to top | Cluster APIs | APIs by category ]