You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
pack is invoked in leader's side when below conditions are met. Let's say S1 is leader (pack) and S2 is follower (apply_pack).
params->log_sync_stop_gap_ > 0. AND
S2's next_slot() < S1's start_index(). AND
S1's committed index > S2's next_slot() + params->log_sync_stop_gap_.
Then apply_pack's first parameter (index you referred to) will always be S2's next_slot(). Leader always sends the log starting from next_slot() of the follower, so none of three can be possible, unless follower's log store is changed before receiving the pack message from the leader.
Hi,
Could you help to clarify preconditions which
apply_pack
may rely on? In particular I'm wondering which of cases listed below are possible.(In the list below by index I refer to first parameter of
apply_pack
)If 3rd case is possible then may we truncate log entries which go after
index + number_of_logs(pack)
as part ofapply_pack
execution?The text was updated successfully, but these errors were encountered: