Commit Graph

59 Commits (b3e7f49a33b95c3b11d866c9e1305cf5d7c141a5)

Author SHA1 Message Date
Xiang Li 46dd6bbd81 when change the state to leader, we should also update the s.leader to its own name 2013-07-07 17:01:55 -07:00
Ben Johnson 107888aaff Pass race detector. 2013-07-07 16:12:24 -06:00
Ben Johnson 08e2d519ae Refactor server event loop. 2013-07-07 14:21:04 -06:00
Ben Johnson ce3dbb5dfb Server clean up. 2013-07-06 13:41:42 -06:00
Ben Johnson 44f3ef6701 [Fix #47] Clean up external interface. 2013-07-05 22:49:47 -06:00
Xiang Li 5f64d15776 change > to >=. > will cause panic when resp.CommitIndex equals prevLogIndex 2013-07-05 16:45:55 -07:00
Xiang Li cbceb05801 add server state mutex to avoid state race condition 2013-07-05 10:44:03 -07:00
Xiang Li fe55d87640 server should not be blocking will holding the lock 2013-07-03 10:10:43 -07:00
Xiang Li 5c5b489331 rafactor server.go 2013-07-03 09:53:46 -07:00
Xiang Li c87fa96a14 make stepdown blocking 2013-07-02 18:22:37 -07:00
Xiang Li 24fe106efe clean up server_test.go 2013-07-01 09:14:21 -07:00
Xiang Li a6a3f76ea1 clean up promote 2013-07-01 08:46:53 -07:00
Xiang Li 4c13a40fe3 return command index in do(); add checking in peer.go; gofmt 2013-06-28 16:58:31 -07:00
Xiang Li aa76606fa8 fix three promote test 2013-06-27 14:46:11 -07:00
Ben Johnson 938b649b08 Minor Timer refactor. 2013-06-26 20:35:32 -06:00
Xiang Li e1fd7e46dd close debug and clean println 2013-06-26 17:21:00 -07:00
Xiang Li 0fab22808e clean up timer and change heartbeat and election to the new timer 2013-06-26 16:48:47 -07:00
Ben Johnson b80b7c5a62 Add debug mode. 2013-06-25 14:11:48 -06:00
Xiang Li 00fb080e7c add comments and gofmt 2013-06-24 09:52:51 -07:00
Xiang Li d8884cbbea change the do struct and add commit center 2013-06-23 11:42:31 -07:00
Xiang Li 3b73c41286 election new leader and rejoin works 2013-06-11 15:30:13 -07:00
Xiang Li 531e12146a add timer.fire function, which can fire at the timer channel 2013-06-09 21:47:59 -07:00
Xiang Li 094e77f624 use heartbeat to flush the new command in do() function and keep the response result in the log entry 2013-06-08 22:39:50 -07:00
Ben Johnson 769a5ed6a1 go fmt 2013-06-07 22:19:18 -04:00
Xiang Li f15cadeffd add snapshot unit test 2013-06-05 20:25:17 -07:00
Xiang Li 32729ef871 solve conflicts 2013-06-04 17:22:09 -07:00
Xiang Li 3a6fc7bee4 add log-compaction 2013-06-04 17:02:45 -07:00
Ben Johnson 8efbb1535e Fix peer timer race condition. 2013-06-04 09:35:43 -04:00
Ben Johnson c544519c7c Fix timer race condition. 2013-06-03 19:16:50 -04:00
Ben Johnson 147d3c5dd8 Switch to use Transporter interface. 2013-05-28 15:57:38 -04:00
Ben Johnson 9e8834448a Remove join command. Fix race condition. 2013-05-28 14:46:27 -04:00
Ben Johnson 97fbdde521 Interface clean up. 2013-05-26 20:17:20 -06:00
Ben Johnson 345a74b63d Deny command execution for non-leaders. 2013-05-26 20:04:41 -06:00
Ben Johnson 7503eee58b Fix timer cleanup. 2013-05-26 18:02:31 -06:00
Ben Johnson f5761513bc Add log entry marshaling. 2013-05-09 21:50:57 -06:00
Ben Johnson 7521258d0c Fixed minor bugs. 2013-05-07 21:56:32 -06:00
Ben Johnson f3441b8bfb Add multi-node failure with re-election test. 2013-05-05 15:41:55 -06:00
Ben Johnson d00057d4cb Refactor timer. 2013-05-05 14:01:06 -06:00
Ben Johnson 776a2ccff9 Fix race conditions. 2013-05-05 13:48:15 -06:00
Ben Johnson ef423e8ad5 Add multi-node join. 2013-05-05 13:36:23 -06:00
Ben Johnson b6e9a8c07b Fix race condition in election timer. 2013-05-05 11:14:27 -06:00
Ben Johnson 0d2cb8affa Fix race conditions. 2013-05-02 22:16:39 -06:00
Ben Johnson a4f8fb89a0 Add repeated election test. 2013-04-30 23:21:56 -06:00
Ben Johnson 458c2d9d7c Add simple cluster leader election. 2013-04-30 23:11:23 -06:00
Ben Johnson c8b9d783b7 Add log truncation and AppendEntries overwrite. 2013-04-30 22:44:16 -06:00
Ben Johnson 7106fe616e Test for stale indices. 2013-04-30 20:45:05 -06:00
Ben Johnson 6988dd4d6a Add test for stale append. 2013-04-30 20:40:56 -06:00
Ben Johnson b026fec928 Add tests for multiple appends. 2013-04-30 20:39:46 -06:00
Ben Johnson 79a0a57995 Add basic append entries test. 2013-04-29 22:13:50 -06:00
Ben Johnson c218fbfd9b Add tests for vote requests with different log states. 2013-04-29 20:51:16 -06:00