On Unix, Linux and Windows Systems only.
You can use KC_LOCK_MGMT to:
Sign off all users or an individual user who are/is signed on at an abnormally terminated node application (KDCOFF). Any service data for this user that is valid globally in the cluster is lost when you do this.
For this function, you use the sub-opcodes KC_SIGNOFF_ALL and KC_SIGNOFF_SINGLE.
For all users or an individual user who have/has a service bound to a terminated node application, you can mark this service for abnormal termination and this way make it possible for the users or user to sign on again at another node application. The bound service is terminated abnormally the next time the node application to which it is bound is started.
For this function, you use the sub-opcodes KC_ABORT_BOUND_SERVICE, KC_ABORT_ALL_BOUND_SERVICES and KC_ABORT_PTC_SERVICE.
Release a cluster user file lock set on an abnormally terminated KDCDEF run (subopcode KC_UNLOCK_USF).
Period of validity / transaction management /clusters
The call permanently modifies the cluster user file. The modification takes effect immediately and cannot be undone by rolling back the transaction.
This function is only available for UTM cluster applications.
Parameter settings | |
Parameter area | |
Field name | Contents |
version | KC_ADMI_VERSION_1 |
retcode | KC_RC_NIL |
version_data | KC_VERSION_DATA_11 |
opcode | KC_LOCK_MGMT |
KC_ABORT_ALL_BOUND_SERVICES / KC_ABORT_BOUND_SERVICE / KC_ABORT_PTC_SERVICE / KC_SIGNOFF_ALL / KC_SIGNOFF_SINGLE / | |
id_lth | 0 |
select_lth | 0 |
Length of the data structure / 0 | |
Identification area | |
— | |
Selection area | |
— | |
Data structure / 0 |
KDCADMI-Aufruf |
KDCADMI (¶meter_area, NULL, NULL, &data_area) |
Data returned by UTM | |
Parameter area | |
Field name | Content |
Return codes |
subopcode1
In subopcode1, you specify the action that openUTM is to perform. You can specify the following subcodes:
KC_ABORT_ALL_BOUND_SERVICES
Marks all the services that are bound to a terminated node application for abnormal termination. This allows the corresponding users to sign on at other node applications (KDCSIGN). The bound services are terminated abnormally the next time the node application to which they are bound is started.
KC_ABORT_BOUND_SERVICE
Marks a user service that is bound to a terminated node application for abnormal termination. This allows the user to sign on at another node application (KDCSIGN). The bound service is terminated abnormally the next time the node application to which it is bound is started.
KC_ABORT_PTC_SERVICE
Marks a user service that is bound to a terminated node application and has a transaction in PTC state for abnormal termination. This allows the user to sign on at another node application (KDCSIGN). The bound service is terminated abnormally the next time the node application to which it is bound is started.
KC_SIGNOFF_ALL
Sign off all users who are signed on at an abnormally terminated node application so that these users can sign on at another node application. Service data that is valid throughout the cluster for these users is lost.
KC_SIGNOFF_SINGLE
Sign off a single user who is signed on at an abnormally terminated node application so that this user can sign on at another node application. Service data that is valid throughout the cluster for this user is lost
KC_UNLOCK_USF
Releases the lock in the cluster user file after a KDCDEF run was terminated abnormally. It is only necessary to issue the call with subopcode KC_UNLOCK_USF if a KDCDEF has terminated abnormally and a subsequent KDCDEF run outputs message K516 with error code 8.
data_lth
In data_lth, enter the length of the data structure in the data area or 0.
Data area
In the data area, you must specify the data structure kc_lock_mgmt_str for all subopcode1 values excluding KC_UNLOCK_USF:
The data structure kc_lock_mgmt_str is defined as follows:
struct kc_lock_mgmt_str |
|
The fields in the data structure have the following meanings:
mg_name
Only for subopcode1=KC_SIGNOFF_SINGLE:
Name of the user who is to be signed off.If subopcode1=KC_ABORT_BOUND_SERVICE:
Name of the user with service which is bound to a terminated node application and is to be marked for abnormal termination.If subopcode1=KC_ABORT_PTC_SERVICE:
Name of the user with a service in the PTC state which is bound to a terminated node application and is to be marked for abnormal termination.Other values for subopcode1: irrelevant
You do not need to specify the node number. openUTM identifies this.
mg_node
Only for subopcode1=KC_SIGNOFF_ALL:
Number of the node from which all the users are to be signed off.If subopcode1=KC_ABORT_ALL_BOUND_SERVICES:
Number of the node that was terminated. All the service bound to this node should be marked for abnormal termination.
Other values for subopcode1: irrelevant
retcode
openUTM indicates the return code from the call in the retcode field. Alongside the return codes listed in section "Return codes", the following return codes may also occur:
Maincode = KC_MC_REJECTED The call was rejected by UTM. Subcodes: |
KC_SC_CUSF_TRANSIENT_ERROR (only on BS2000 systems) For each subopcode1: |
KC_SC_CUSF_RT_CODE_NOT_OK For each subopcode1: Internal UTM error. |
KC_SC_CUSF_INVALID_STATE For subopcode1= KC_SIGNOFF_ALL/KC_ABORT_ALL_BOUND_SERVICES: |
KC_SC_CUSF_USER_HAS_NO_BND_SRV For subopcode1=KC_ABORT_BOUND_SERVICE: The user has no bound service. |
KC_SC_CUSF_USER_HAS_NO_PTC For subopcode1=KC_ABORT_PTC_SERVICE: The user has no node-bound service with a transaction in the PTC state. |
KC_SC_CUSF_USER_HAS_PTC For subopcode1=KC_ABORT_BOUND_SERVICE: The user has a node-bound service with a transaction in the PTC state. |
KC_SC_CUSF_USER_NOT_FOUND For subopcode1=KC_SIGNOFF_SINGLE/KC_ABORT_BOUND_SERVICE/KC_ABORT_PTC_SERVICE: The user was not found. |
KC_SC_CUSF_USER_NOT_SIGNED For subopcode1=KC_SIGNOFF_SINGLE: The user is not signed in at any node. |
KC_SC_DATA_MISSING mg_name is not binary zero and subopcode1=KC_SIGNOFF_ALL, KC_ABORT_BOUND_SERVICE or KC_ABORT_ALL_BOUND_SERVICES. |
KC_SC_NOT_NULL mg_node is not binary zero and subopcode1=KC_SIGNOFF_SINGLE, KC_ABORT_BOUND_SERVICE or KC_ABORT_PTC_SERVICE. |