Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
QUORUM_INITIALIZE(Corosync Cluster Engine Programmer's ManQUORUM_INITIALIZE(3)

NAME
       quorum_initialize - Create a new	connection to the Quorum service

SYNOPSIS
       #include	<corosync/quorum.h>

       int   quorum_initialize(quorum_handle_t	 *handle,   quorum_callbacks_t
       *callbacks, uint32_t *quorum_type);

DESCRIPTION
       The quorum_initialize function is used to initialize  a	connection  to
       the quorum API.

       Each  application may have several connections to the quorum API.  Each
       application uses	the handle argument to uniquely	identify  the  connec-
       tion.   The  handle  argument  is  then used in other function calls to
       identify	the connection to be used for communication  with  the	quorum
       service.

       Every  time  the	 voting	configuraton changes (eg a node	joins or leave
       the cluster) or the quorum status change, the callback is called.   The
       callback	function is described by the following type definitions:

       typedef void (*quorum_notification_fn_t)	(
	       quorum_handle_t handle,
	       uint32_t	quorate,
	       uint64_t	ring_seq,
	       uint32_t	view_list_entries,
	       uint32_t	*view_list
	       );

       The callbacks argument is of the	type:

       typedef struct {
	       quorum_notification_fn_t	quorum_notify_fn;
       } quorum_callbacks_t;

       The quorum_type argument	is set to:

       #define QUORUM_FREE     0
       #define QUORUM_SET      1

       QUORUM_FREE  value means	that no	quorum algorithm is loaded and that no
       callbacks will take place.

       QUORUM_SET value	means that one quorum algorithm	is configured and that
       callbacks will take place.

       When  a	configuration  change  occurs, the callback is called from the
       quorum_dispatch() function.

RETURN VALUE
       This call returns the CS_OK value if successful,	otherwise an error  is
       returned.

ERRORS
       CS_ERR_TRY_AGAIN	Resource temporarily unavailable

       CS_ERR_INVALID_PARAM Invalid argument

       CS_ERR_ACCESS Permission	denied

       CS_ERR_LIBRARY The connection failed

       CS_ERR_INTERRUPT	System call inturrupted	by a signal

       CS_ERR_NOT_SUPPORTED The	requested protocol/functuality not supported

       CS_ERR_MESSAGE_ERROR Incorrect auth message received

       CS_ERR_NO_MEMORY	Not enough memory to completed the requested task

SEE ALSO
       quorum_overview(8),   quorum_finalize(3),   quorum_getquorate(3),  quo-
       rum_trackstart(3), quorum_trackstop(3),	quorum_fd_get(3),  quorum_dis-
       patch(3), quorum_context_set(3),	quorum_context_get(3)

corosync Man Page		  2017-07-02		  QUORUM_INITIALIZE(3)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=quorum_initialize&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help