2016-09-13 7 views
2

enter image description hereこのシナリオではいかがですか?

は、dは上の写真、それは私の意見では、インデックス11と12のログに対処する方法、それは2つのログを削除する必要のリーダーとして選出されたと仮定し、私は任意のを見つけることができません。上記のシナリオのようにログを処理する方法についてのラフ紙の手がかり。

答えて

1

(d)は、それがフォロワーにそのログを複製する、リーダーに選出された場合、それが

言う raft paperでログのレプリケーションのインデックス11 & 12を参照してくださいセクション5.3でアイテムを削除しません。

Raftでは、リーダーはフォロワーの ログに自身の複製を強制的に矛盾させて処理します。つまり、 フォロワーログの競合するエントリは、リーダーのログのエントリで上書きされます。

リーダー選挙に関するルールは、これが安全な決定であることを保証します。

+0

11&12のログはまだコミットされていませんが、私の理解では、raftは以前のitermsでまだコミットされていないログを再コミットしません。 – Charles0429

+0

リーダーはそれらが複製されるまでコミットされませんが、リーダーはリーダーになる前の条件を複製します。ログ項目が十分なノードに複製されると、それらのエントリはコミットされます。 – superfell

+0

のラフトペーパーのセクション5.4.2の図8は、以前の用語のログエントリをコミットすることによって、以前のリーダーによって既にコミットされた既存のログエントリを上書きする可能性があるので、リーダーdはログ11と12をそれらをコミットする。 – Charles0429

関連する問題