Index Index for
Section 3
Index Alphabetical
listing for D
Bottom of page Bottom of
page

dlm_rd_detach(3)

NAME

dlm_rd_detach - Detaches a process or process lock group from a recovery domain

LIBRARY

Distributed Lock Manager Library (libdlm.a)

SYNOPSIS

#include <sys/dlm.h> dlm_status_t dlm_rd_detach ( dlm_rd_id_t rd_id, dlm_rd_flags_t detach_flag );

PARAMETERS

rd_id Specifies the recovery domain ID returned by a previous call to dlm_rd_attach. detach_flag Specifies flags that modify the operation. The detach_flag parameter is a bit mask that is the logical OR of each bit set, where each bit corresponds to an option. The dlm_rd_flags_t structure defines a symbolic name for each flag bit. Only one flag is currently defined: DLM_RD_INVALIDATE Invalidates the recovery domain. This effectively makes it appear that the value blocks of all resources currently in the recovery domain are invalid, as well as those of any resources that are subsequently added to the recovery domain while the domain is invalid. To validate a recovery domain, call the dlm_rd_collect() and dlm_rd_validate() functions.

DESCRIPTION

The dlm_rd_detach() function detaches a process from the clusterwide recovery domain identified by the rd_id parameter. A process cannot detach from a recovery domain if it owns locks or has yet to call dlm_rd_validate() to validate a recovery domain collection created from a prior call to the dlm_rd_collect() function. To detach a process lock group from a recovery domain, each process in the lock group must explicitly detach from the domain. Any of these processes can specify the DLM_RD_INVALIDATE flag to invalidate the recovery domain.

RETURN VALUES

Upon completion, the dlm_rd_detach() function call returns one of the following values: DLM_SUCCESS The process successfully detached from the recovery domain and, if the DLM_RD_INVALIDATE flag was specified, all resources in the recovery domain were invalidated. DLM_BADPARAM The value of the rd_id parameter was out of the range for valid resource domain IDs, or an invalid flag was specified. DLM_EINPROGRESS The process owns a recovery domain collection handle that has not yet been validated by a call to dlm_rd_validate. DLM_ENOSYS The DLM is not enabled. DLM_HASLOCKS The process or the process lock group to which it belongs owns locks on resources in the recovery domain. DLM_IVRDID No existing recovery domain corresponds to the value of the rd_id parameter. DLM_NO_GROUP The process is attempting to detach from a recovery domain owned by a process lock group and it does not belong to that lock group. DLM_NOTATTACHED The process has not yet called the dlm_nsjoin() function to attach to a distributed lock manager (DLM) namespace, or the process belongs to a process lock group and did not attach to the group's recovery domain.

FILES

/usr/include/sys/dlm.h DLM library header file.

RELATED INFORMATION

Functions: dlm_cancel(3), dlm_cvt(3), dlm_detach(3), dlm_get_lkinfo(3), dlm_get_rsbinfo(3), dlm_glc_create(3), dlm_glc_detach(3), dlm_glc_destroy(3), dlm_lock(3) dlm_notify(3), dlm_nsjoin(3), dlm_nsleave(3), dlm_perrno(3), dlm_quecvt(3), dlm_quelock(3), dlm_rd_attach(3), dlm_rd_collect(3), dlm_rd_validate(3), dlm_set_signal(3), dlm_unlock(3) File: dlm(4) TruCluster Server Cluster Highly Available Applications

Index Index for
Section 3
Index Alphabetical
listing for D
Top of page Top of
page