3.1.4.2.149 ApiDeleteGroupSet (Opnum 166)

The ApiDeleteGroupSet method<136> removes the designated cluster group set from the nonvolatile cluster state.

The server MUST fail this method using ERROR_DIR_NOT_EMPTY if one or more dependents exist for the group set identified by GroupSet.

The server MUST accept an ApiDeleteGroupSet request only if its protocol server state is read/write, as specified in section 3.1.1.

The server MUST require that the access level associated with the GroupSet context handle is "All" (section 3.1.4).

 error_status_t
 ApiDeleteGroupSet {
   [ in ] HGROUPSET_RPC GroupSet,
   [ out ] error_status_t *rpc_status
 }

GroupSet: An HGROUPSET_RPC (section 2.2.1.11) context handle that was obtained in a previous ApiOpenGroupSet (section 3.1.4.2.147) or ApiCreateGroupSet (section 3.1.4.2.146) method call.

rpc_status: A 32-bit integer used to indicate success or failure. The RPC runtime MUST indicate by writing to this parameter whether the runtime succeeded in executing this method on the server. The encoding of the value passed in this parameter MUST conform to encoding for comm_status and fault_status, as specified in Appendix E of [C706].

Return Values: The method MUST return the following error codes for the specified conditions.

Return value/code

Description

0x00000000

ERROR_SUCCESS

Success

0x00000006

ERROR_INVALID_HANDLE

The GroupSet parameter does not represent a valid HGROUPSET_RPC context handle.

0x00000091

ERROR_DIR_NOT_EMPTY

One or more dependents exist for the group set.

0x00001767

ERROR_GROUPSET_NOT_AVAILABLE

The group set represented by the GroupSet parameter is not part of the nonvolatile cluster state.

0x00001768

ERROR_GROUPSET_NOT_FOUND

The group set represented by the GroupSet parameter is not available for any further requests.

For any other condition, the server MUST set rpc_status to a value that is not one of the values listed in the preceding table. The client MUST treat all values that are not listed in the preceding table the same, except as specified in section 3.2.4.6.

The server MUST return ERROR_GROUPSET_NOT_AVAILABLE if, at the time the server receives the request from the client, the group set represented by the GroupSet parameter is not part of the nonvolatile cluster state.

The server SHOULD return ERROR_GROUPSET_NOT_FOUND if the server determines that the group represented by the GroupSet parameter has already been deleted. This is determined while communicating with other servers to delete the group set from the nonvolatile cluster state. The manner of determination is implementation-specific.