Commit Graph

8 Commits (220ea564e741d6ea012bb80734b78a87bfe0bf23)

Author SHA1 Message Date
Ben Johnson 9ff2969d38 Add set up code for raft internal tests. 2015-02-20 13:52:12 -07:00
Ben Johnson be22933c49 Additional raft fixes. 2015-02-18 15:37:42 -07:00
Ben Johnson f6ceb9bd32 Refactor raft state handling.
This commit changes the state handling of the raft log. The actions
for related to each raft state are strictly confined within that state's
loop. To transition between states, the raft log now much clean up all
its actions before moving on.

This fixes issues where goroutines were kicked off for one state but
were delayed in their scheduling so they would begin after the log
had already changed to another state.
2015-02-16 15:45:37 -07:00
Ben Johnson 57c14987a6 Raft package fixes.
This commit includes various fixes to improve the stability of the raft package tests and benchmarks.
2015-02-06 12:46:50 -07:00
Ben Johnson 9c66efa015 Clarify raft trace logging. 2015-02-05 07:35:08 -07:00
Ben Johnson 6c14371df4 Refactor raft package.
This commit refactors the raft package to more loosely couple the individual parts. The clock is now broken into
an interface that signals individual actions in the log. The transport has been mocked to allow more control over
the log tests. The handler's log has been mocked to separate its testing from the log itself.
2015-02-04 18:59:06 -07:00
Ben Johnson eef79f8aff Add raft configuration encoding test coverage. 2014-11-11 20:30:21 -07:00
Ben Johnson cbc84636de Basic multi-node simulation testing. 2014-09-13 18:12:32 -06:00