Log Matching Property
লগ-ম্যাচিং প্রপার্টি
Raft-এর invariant — দুই log-এ এক index-এ এক term-এর entry থাকলে, তার আগের পুরো prefix identical।
AppendEntries consistency check এই property টানে:
leader.log[i] = (term t, cmd c)
follower.log[i] = (t', c')
t' == t হতে হবে ⇒ i-1, i-2, ... সব জায়গায় দুই log এক
- Induction argument: index i-তে match ⇒ AppendEntries-এর prevLogIndex/ prevLogTerm check i-1 match করায় ⇒ পিছনে পিছনে পুরো prefix
- Practical ফল: conflict খুঁজতে হয় না — mismatch দেখামাত্র leader follower-এর suffix overwrite করতে পারে, কারণ conflicting prefix committed হওয়ার উপায় নেই
- State Machine Safety-র দুই স্তম্ভের একটা (অন্যটা Leader Completeness)