- wait for a message on a fault monitor control socket
cc [flags…] -I /usr/cluster/include file -L /usr/cluster/lib -l dsdev #include <rgm/libdsdev.h> scha_err_t scds_fm_sleep(scds_handle_t handle, time_t timeout);
Thescds_fm_sleep() function waits for a data service application process tree that running under control of the process monitor facility to die. If no such death occurs within the specified timeout period, the function returns SCHA_ERR_NOERR.
If a data service application process tree death occurs, scds_fm_sleep() records SCDS_COMPLETE_FAILURE in the failure history and either restarts the process tree or fails it over according to the algorithm described in the scds_fm_action(3HA) man page. If a failover attempt is unsuccessful, a restart of the application is attempted.
If an attempted restart fails, the function returns SCHA_ERR_INTERNAL.
Note that if the failure history causes this function to do a failover, and the failover attempt succeeds, scds_fm_sleep() never returns.
The following parameters are supported:
The handle returned from scds_initialize(3HA).
The timeout period measured in seconds.
The scds_fm_sleep() function returns the following:
The function succeeded.
The function failed.
Indicates that the process tree has not died.
Indicates that the data service application process tree has died and failed to restart.
Indicate the function failed. See scha_calls(3HA) for the meaning of failure codes.
See attributes(5) for descriptions of the following attributes: