Module rust_corosync::votequorum[][src]

Expand description

votequorum is the main quorum provider for corosync, using this API, users can query the state of nodes in the cluster, request callbacks when the nodelists change, and set up a quorum device.

Structs

Callbacks that can be called from votequorum, pass these in to initialize

A handle into the votequorum library. Returned from initialize and needed for all other calls

Basic information about a node in the cluster. Contains NodeId, and NodeState

Detailed information about a node in the cluster, returned from get_info

Flags in the NodeInfo struct

RingId returned by votequorum_notification_fn

Enums

Current state of a node in the cluster, part of the NodeInfo and Node structs

Functions

Get the current ‘context’ value for this handle. The context value is an arbitrary value that is always passed back to callbacks to help identify the source

Set the current ‘context’ value for this handle. The context value is an arbitrary value that is always passed back to callbacks to help identify the source. Normally this is set in trackstart, but this allows it to be changed

Call any/all active votequorum callbacks for this Handle. see DispatchFlags for details

Return a file descriptor to use for poll/select on the VOTEQUORUM handle

Finish with a connection to corosync

Returns detailed information about a node in a NodeInfo structure

Initialize a connection to the votequorum library. You must call this before doing anything else and use the passed back Handle. Remember to free the handle using finalize when finished.

Allow qdevice to tell votequorum if master_wins can be enabled or not

Poll a quorum device This must be done more often than the qdevice timeout (default 10s) while the device is active and the RingId must match the current value returned from the callbacks for it to be accepted.

Register a quorum device

Unregister a quorum device

Update the name of a quorum device

Set the current expected_votes for the cluster, this value must be valid and not result in an inquorate cluster.

Set the current votes for a node

Track node and votequorum changes

Stop tracking node and votequorum changes