[
https://issues.apache.org/jira/browse/RATIS-874?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17094928#comment-17094928
]
Hanisha Koneru commented on RATIS-874:
--------------------------------------
[~ljain], [~msingh] can you please review when you get a chance. Thanks.
> Fix AppendEntry validity checks to take the SnapshotIndex into account
> ----------------------------------------------------------------------
>
> Key: RATIS-874
> URL: https://issues.apache.org/jira/browse/RATIS-874
> Project: Ratis
> Issue Type: Bug
> Reporter: Hanisha Koneru
> Assignee: Hanisha Koneru
> Priority: Major
> Attachments: RATIS-874.001.patch, RATIS-874.002.patch
>
>
> This Jira aims to fix the following:
> # Before sending an appendEntry request to follower, leader checks the
> validity of the request be verifying if the follower has the previous log
> entry. But if the follower had installed a snapshot, the previous could be
> missing and the appendEntry would still be valid. Hence, the SnapshotIndex
> should be factored in while checking the validity of appendEntry request.
> Leader should store Follower's SnapshotIndex for this.
> # When follower receives appendEntry request, it checks the validity of log
> entry - the first index of the log entry is exactly 1 more than the last log
> index. During this check, the snapshotIndex should also be considered i.e.
> the first index of the log entry can be 1 more than the last log index or the
> snapshotIndex.
> # After Ratis server is restared, it loads all the available log segments.
> But logs with end index < last snapshot index should not be loaded. There can
> be gaps in the log segments upto the snapshotIndex if a snapshot was
> installed from leader node.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)