You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ratis.apache.org by "Hanisha Koneru (JIRA)" <ji...@apache.org> on 2019/04/01 21:36:00 UTC

[jira] [Commented] (RATIS-498) Notify Follower to Install Snapshot through state machine

    [ https://issues.apache.org/jira/browse/RATIS-498?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16807211#comment-16807211 ] 

Hanisha Koneru commented on RATIS-498:
--------------------------------------

Thank you [~szetszwo] for the review.
{quote} - In RaftServerImpl.installSnapshot, the follower should check if the request matches the installSnapshotEnabled conf. Otherwise, it is possible the leader and follower have set in different values of installSnapshotEnabled conf.{quote}
To check that the config matches, should we send the full RaftConfiguration as part of the InstallSnapshotRequestProto or should we just send if snapshot installation is enabled or not?
And, if leader and follower have different settings for installSnapshotEnabled, I am thinking we could return a new InstallSnapshotResult result code (CONF_MISMATCH) to the leader. But there would not be a way to fix this error, right? Should the follower be shutdown in this case?

> Notify Follower to Install Snapshot through state machine
> ---------------------------------------------------------
>
>                 Key: RATIS-498
>                 URL: https://issues.apache.org/jira/browse/RATIS-498
>             Project: Ratis
>          Issue Type: New Feature
>          Components: server
>            Reporter: Hanisha Koneru
>            Assignee: Hanisha Koneru
>            Priority: Major
>         Attachments: RATIS-498.000.patch, RATIS-498.001.patch, RATIS-498.002.patch, RATIS-498.003.patch, RATIS-498.004.patch, RATIS-498.005.patch, RATIS-498.006.patch, RATIS-498.007.patch, RATIS-498.008.patch
>
>
> When a lagging Follower wants to catch up with the Leader, and the Leader only has logs with start index greater than the Followers's last log index, then the leader sends an InstallSnapshotRequest to the the Follower. 
> The aim of this Jira is to allow State Machine to decouple snapshot installation from the Ratis server. When Leader does not have the logs to get the Follower up to speed, it should notify the Follower to install a snapshot (if install snapshot through Log Appender is disabled). The Follower in turn notifies its state machine that a snapshot is required to catch up with the leader.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)