1. 31 Aug, 2021 1 commit
  2. 01 Aug, 2021 1 commit
  3. 27 Jul, 2021 1 commit
    • Shaya Potter's avatar
      match up raft_get_last_log_term() to should_grant_vote() (#14) · fab583d6
      Shaya Potter authored
      raft_get_last_log_term() is used for filling in vote requests, except it didn't match 100% with the logic in should_grant_vote
      
      * update test to prove that change works as needed
      
      previous test tested when we don't snapshot everything, but code was broken when we did.
      modified test tested only when we snapshot everything, now we do both in sequence.
      
      * use raft_get_last_log_term in __should_grant_vote()
      
      also modify __should_grant_vote to take a raft_server_t instead of raft_server_privat_t so its not constantly casting it to void.
      fab583d6
  4. 18 Dec, 2018 1 commit
  5. 09 Dec, 2018 1 commit
  6. 06 Dec, 2018 1 commit
  7. 18 Nov, 2018 1 commit
  8. 08 Oct, 2018 1 commit
  9. 27 Sep, 2018 2 commits
    • Yossi Gottlieb's avatar
      AE error response not properly handled. · 5e336b8f
      Yossi Gottlieb authored
      Errors were ignored if node's match_idx==next_idx-1, I assume (??) as a
      precaution against silently feeding a node that is not monotonic.
      
      However this does not consider the case where send_appendentries()
      relies on snapshot_last_idx which may be greater than the node's index.
      5e336b8f
    • Yossi Gottlieb's avatar
      AE error response not properly handled. · b5cf5cf9
      Yossi Gottlieb authored
      Errors were ignored if node's match_idx==next_idx-1, I assume (??) as a
      precaution against silently feeding a node that is not monotonic.
      
      However this does not consider the case where send_appendentries()
      relies on snapshot_last_idx which may be greater than the node's index.
      b5cf5cf9
  10. 16 Aug, 2018 1 commit
  11. 15 Aug, 2018 1 commit
  12. 07 Aug, 2018 2 commits
  13. 20 Jun, 2018 1 commit
  14. 07 Jun, 2018 1 commit
    • Willem Thiart's avatar
      Remove RAFT_LOGTYPE_SNAPSHOT · 700eebe6
      Willem Thiart authored
      The RAFT_LOGTYPE_SNAPSHOT was a bad design choice. It's better to not
      have this marker entry so that users don't have to check for the log
      entry type in the callbacks. Also, loading a snapshot correctly created
      this marker entry, but the compaction side did not. It's better to
      remove this log type than to fix this asymmetry.
      
      Fixes the following edge cases:
      - Server crashes if the last snapshot index is N and a appendentries
      message pops entries all the way back to index N.
      - Server sends an appendentries message with an invalid prev_log_idx and
      prev_log_term, causing the peer to crash.
      700eebe6
  15. 24 May, 2018 1 commit
  16. 16 May, 2018 1 commit
  17. 11 Apr, 2018 1 commit
  18. 09 Jan, 2018 1 commit
  19. 08 Jan, 2018 1 commit