raft_fleet v0.9.1 RaftFleet.Cluster.State View Source

Link to this section Summary

Functions

Type-aware getter for consensus_groups

Type-aware setter for consensus_groups

Type-aware getter for members_per_leader_node

Type-aware setter for members_per_leader_node

Creates a new instance of RaftFleet.Cluster.State by using the given dict

A variant of new/1 which returns t or raise if validation fails

Type-aware getter for nodes_per_zone

Type-aware setter for nodes_per_zone

Type-aware getter for recently_removed_groups

Type-aware setter for recently_removed_groups

Updates an existing instance of RaftFleet.Cluster.State with the given dict. The values in the dict are validated by each field’s valid?/1 function. Returns {:ok, valid_struct} or {:error, reason}

A variant of update/2 which returns t or raise if validation fails. In other words, update/2 followed by Croma.Result.get!/1

Checks if the given value belongs to t/0 or not

Link to this section Types

Link to this type t() View Source
t() :: %RaftFleet.Cluster.State{
  consensus_groups: RaftFleet.ConsensusGroups.t(),
  members_per_leader_node: RaftFleet.MembersPerLeaderNode.t(),
  nodes_per_zone: RaftFleet.NodesPerZone.t(),
  recently_removed_groups: RaftFleet.RecentlyRemovedGroups.t()
}

Link to this section Functions

Link to this function add_group(state0, group, n_replica) View Source
Link to this function consensus_groups(state) View Source
consensus_groups(t()) :: RaftFleet.ConsensusGroups.t()

Type-aware getter for consensus_groups.

Link to this function consensus_groups(s, field) View Source
consensus_groups(t(), RaftFleet.ConsensusGroups.t()) :: t()

Type-aware setter for consensus_groups.

Link to this function members_per_leader_node(state) View Source
members_per_leader_node(t()) :: RaftFleet.MembersPerLeaderNode.t()

Type-aware getter for members_per_leader_node.

Link to this function members_per_leader_node(s, field) View Source
members_per_leader_node(t(), RaftFleet.MembersPerLeaderNode.t()) :: t()

Type-aware setter for members_per_leader_node.

Creates a new instance of RaftFleet.Cluster.State by using the given dict.

For missing fields, default/0 of each field type will be used.

Returns {:ok, valid_struct} or {:error, reason}. The values in the dict are validated by each field’s valid?/1 function.

A variant of new/1 which returns t or raise if validation fails.

In other words, new/1 followed by Croma.Result.get!/1.

Link to this function nodes_per_zone(state) View Source
nodes_per_zone(t()) :: RaftFleet.NodesPerZone.t()

Type-aware getter for nodes_per_zone.

Link to this function nodes_per_zone(s, field) View Source
nodes_per_zone(t(), RaftFleet.NodesPerZone.t()) :: t()

Type-aware setter for nodes_per_zone.

Link to this function recently_removed_groups(state) View Source
recently_removed_groups(t()) :: RaftFleet.RecentlyRemovedGroups.t()

Type-aware getter for recently_removed_groups.

Link to this function recently_removed_groups(s, field) View Source
recently_removed_groups(t(), RaftFleet.RecentlyRemovedGroups.t()) :: t()

Type-aware setter for recently_removed_groups.

Link to this function remove_group(state0, group) View Source

Updates an existing instance of RaftFleet.Cluster.State with the given dict. The values in the dict are validated by each field’s valid?/1 function. Returns {:ok, valid_struct} or {:error, reason}.

Link to this function update!(s, dict) View Source
update!(t(), Dict.t()) :: t()

A variant of update/2 which returns t or raise if validation fails. In other words, update/2 followed by Croma.Result.get!/1.

Link to this function update_removed_groups(state0, node, index_or_group_name_or_nil, now, wait_time) View Source

Checks if the given value belongs to t/0 or not.