rafted_value v0.11.1 RaftedValue.Leadership View Source
Link to this section Summary
Functions
Type-aware getter for follower_responded_times.
Type-aware setter for follower_responded_times.
Type-aware getter for heartbeat_timer.
Type-aware setter for heartbeat_timer.
Creates a new instance of RaftedValue.Leadership by using the given dict
.
A variant of new/1
which returns t
or raise if validation fails.
Type-aware getter for quorum_timer.
Type-aware setter for quorum_timer.
Type-aware getter for quorum_timer_started_at.
Type-aware setter for quorum_timer_started_at.
Updates an existing instance of RaftedValue.Leadership 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
t()
View Source
t() :: %RaftedValue.Leadership{
follower_responded_times: Croma.Map.t(),
heartbeat_timer: Croma.Reference.t(),
quorum_timer: Croma.Reference.t(),
quorum_timer_started_at: RaftedValue.Monotonic.t()
}
t() :: %RaftedValue.Leadership{ follower_responded_times: Croma.Map.t(), heartbeat_timer: Croma.Reference.t(), quorum_timer: Croma.Reference.t(), quorum_timer_started_at: RaftedValue.Monotonic.t() }
Link to this section Functions
can_safely_remove?(l, members, follower, config)
View Source
can_safely_remove?(
RaftedValue.Leadership.t(),
RaftedValue.Members.t(),
pid(),
RaftedValue.Config.t()
) :: boolean()
can_safely_remove?( RaftedValue.Leadership.t(), RaftedValue.Members.t(), pid(), RaftedValue.Config.t() ) :: boolean()
follower_responded(l, members, follower, timestamp, config)
View Source
follower_responded(
RaftedValue.Leadership.t(),
RaftedValue.Members.t(),
pid(),
RaftedValue.Monotonic.t(),
RaftedValue.Config.t()
) :: t()
follower_responded( RaftedValue.Leadership.t(), RaftedValue.Members.t(), pid(), RaftedValue.Monotonic.t(), RaftedValue.Config.t() ) :: t()
follower_responded_times(leadership)
View Source
follower_responded_times(t()) :: Croma.Map.t()
follower_responded_times(t()) :: Croma.Map.t()
Type-aware getter for follower_responded_times.
follower_responded_times(s, field)
View Source
follower_responded_times(t(), Croma.Map.t()) :: t()
follower_responded_times(t(), Croma.Map.t()) :: t()
Type-aware setter for follower_responded_times.
heartbeat_timer(leadership)
View Source
heartbeat_timer(t()) :: Croma.Reference.t()
heartbeat_timer(t()) :: Croma.Reference.t()
Type-aware getter for heartbeat_timer.
heartbeat_timer(s, field)
View Source
heartbeat_timer(t(), Croma.Reference.t()) :: t()
heartbeat_timer(t(), Croma.Reference.t()) :: t()
Type-aware setter for heartbeat_timer.
lease_expired?(arg0, arg1, arg2)
View Source
lease_expired?(
RaftedValue.Leadership.t(),
RaftedValue.Members.t(),
RaftedValue.Config.t()
) :: boolean()
lease_expired?( RaftedValue.Leadership.t(), RaftedValue.Members.t(), RaftedValue.Config.t() ) :: boolean()
new(dict)
View Source
new(term()) :: Croma.Result.t(t())
new(term()) :: Croma.Result.t(t())
Creates a new instance of RaftedValue.Leadership 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.
new!(dict) View Source
A variant of new/1
which returns t
or raise if validation fails.
In other words, new/1
followed by Croma.Result.get!/1
.
new_for_leader(config)
View Source
new_for_leader(RaftedValue.Config.t()) :: t()
new_for_leader(RaftedValue.Config.t()) :: t()
quorum_timer(leadership)
View Source
quorum_timer(t()) :: Croma.Reference.t()
quorum_timer(t()) :: Croma.Reference.t()
Type-aware getter for quorum_timer.
quorum_timer(s, field)
View Source
quorum_timer(t(), Croma.Reference.t()) :: t()
quorum_timer(t(), Croma.Reference.t()) :: t()
Type-aware setter for quorum_timer.
quorum_timer_started_at(leadership)
View Source
quorum_timer_started_at(t()) :: RaftedValue.Monotonic.t()
quorum_timer_started_at(t()) :: RaftedValue.Monotonic.t()
Type-aware getter for quorum_timer_started_at.
quorum_timer_started_at(s, field)
View Source
quorum_timer_started_at(t(), RaftedValue.Monotonic.t()) :: t()
quorum_timer_started_at(t(), RaftedValue.Monotonic.t()) :: t()
Type-aware setter for quorum_timer_started_at.
remove_follower_response_time_entry(leadership, follower)
View Source
remove_follower_response_time_entry(RaftedValue.Leadership.t(), pid()) ::
t()
remove_follower_response_time_entry(RaftedValue.Leadership.t(), pid()) :: t()
reset_heartbeat_timer(l, config)
View Source
reset_heartbeat_timer(RaftedValue.Leadership.t(), RaftedValue.Config.t()) ::
t()
reset_heartbeat_timer(RaftedValue.Leadership.t(), RaftedValue.Config.t()) :: t()
reset_quorum_timer(l, config)
View Source
reset_quorum_timer(RaftedValue.Leadership.t(), RaftedValue.Config.t()) :: t()
reset_quorum_timer(RaftedValue.Leadership.t(), RaftedValue.Config.t()) :: t()
stop_timers(arg0)
View Source
stop_timers(RaftedValue.Leadership.t()) :: :ok
stop_timers(RaftedValue.Leadership.t()) :: :ok
unresponsive_followers(arg0, members, config)
View Source
unresponsive_followers(
RaftedValue.Leadership.t(),
RaftedValue.Members.t(),
RaftedValue.Config.t()
) :: [pid()]
unresponsive_followers( RaftedValue.Leadership.t(), RaftedValue.Members.t(), RaftedValue.Config.t() ) :: [pid()]
update(s, dict)
View Source
update(t(), Dict.t()) :: Croma.Result.t(t())
update(t(), Dict.t()) :: Croma.Result.t(t())
Updates an existing instance of RaftedValue.Leadership 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}
.
update!(s, dict) View Source
A variant of update/2
which returns t
or raise if validation fails.
In other words, update/2
followed by Croma.Result.get!/1
.
valid?(value) View Source
Checks if the given value belongs to t/0
or not.