Commit Graph

8440 Commits (90ea3fc4ad8e94512ada1f3a6bd8e6082fdbc330)

Author SHA1 Message Date
Ben Johnson 6ce3a6cd92 Use client.Post(). 2013-07-08 21:33:52 -06:00
Ben Johnson 5e713120bf HTTP Transporter fixes. 2013-07-08 21:00:14 -06:00
Ben Johnson 4ee205422c Merge branch 'master' of https://github.com/benbjohnson/go-raft into http-transporter
Conflicts:
	peer.go
	server.go
2013-07-08 20:56:15 -06:00
Ben Johnson 5aa494ddf9 Add HTTPTransporter. 2013-07-08 20:55:00 -06:00
Ben Johnson 1c4b918fab Merge pull request #62 from coreos/master
Remove the lock in init()
2013-07-08 16:58:42 -07:00
Xiang Li 3392f8192f Remove the lock in init(). Since addPeer func() require that lock. When do log replay in the init(), there will be deadlock 2013-07-08 16:42:33 -07:00
Ben Johnson 1157ef0199 Merge pull request #61 from coreos/master
Fix two problems
2013-07-08 12:42:56 -07:00
Xiang Li 9efa791026 record the value of the commit result before remvoe it 2013-07-08 10:56:26 -07:00
Xiang Li b3e7f49a33 do not send commit signal if it came from old leader 2013-07-08 10:35:26 -07:00
Ben Johnson 271a734791 Merge pull request #60 from coreos/master
create new channel before start heartbeat
2013-07-08 07:24:44 -07:00
Xiang Li 7178b21d27 create new channel before start heartbeat to avoid recv stop signal from old heartbeat func 2013-07-07 22:26:36 -07:00
Ben Johnson c5bebbae21 Merge pull request #59 from coreos/master
Fix Election timeout
2013-07-07 21:51:46 -07:00
Xiang Li 53d43dee4f fix election timeout problem 2013-07-07 21:31:58 -07:00
Ben Johnson d309819cfa Merge pull request #57 from xiangli-cmu/master
fix peer stop channel problem
2013-07-07 20:05:10 -07:00
Xiang Li e045441f52 fix peer stop channel problem 2013-07-07 19:58:01 -07:00
Ben Johnson e7e96e5259 Merge pull request #56 from xiangli-cmu/master
Fix break in select
2013-07-07 17:30:41 -07:00
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
Xiang Li fa3ec69b6b fix break in select 2013-07-07 16:52:18 -07:00
Ben Johnson 347a27e626 Merge pull request #55 from xiangli-cmu/master
when candidate stepdown it should break the loop; gofmt
2013-07-07 16:45:06 -07:00
Xiang Li d3787f60c1 when candidate stepdown it should break the loop; gofmt 2013-07-07 16:37:11 -07:00
Ben Johnson 7845ebd5c8 Merge pull request #54 from xiangli-cmu/master
Fix #52
2013-07-07 16:29:42 -07:00
Xiang Li 6c6c76bbd9 [Fix #52] Detect new leader with same term as candidate in processAppendEntriesRequest 2013-07-07 16:26:18 -07:00
Xiang Li ecf33068a2 Merge https://github.com/benbjohnson/go-raft 2013-07-07 16:12:25 -07:00
Ben Johnson 77e2d438d1 Merge pull request #52 from benbjohnson/50-server-event-loop
Refactor server event loop
2013-07-07 15:55:06 -07:00
Ben Johnson 00d109823e Retrieve peer index and term before verifying server state in heartbeat. 2013-07-07 16:19:03 -06:00
Ben Johnson 107888aaff Pass race detector. 2013-07-07 16:12:24 -06:00
Ben Johnson 743b684370 gofmt 2013-07-07 14:55:55 -06:00
Ben Johnson 08e2d519ae Refactor server event loop. 2013-07-07 14:21:04 -06:00
Xiang Li 85bedaa329 Merge pull request #1 from xiangli-cmu/server
Server
2013-07-06 21:05:44 -07:00
Ben Johnson ce3dbb5dfb Server clean up. 2013-07-06 13:41:42 -06:00
Ben Johnson 0dd663e458 Merge pull request #48 from benbjohnson/47-external-interface-cleanup
[Fix #47] Clean up external interface.
2013-07-05 21:52:52 -07:00
Ben Johnson 44f3ef6701 [Fix #47] Clean up external interface. 2013-07-05 22:49:47 -06:00
Ben Johnson 72d2d09ddf Merge pull request #45 from xiangli-cmu/server
add server state mutex to avoid state race condition
2013-07-05 21:15:15 -07: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
Ben Johnson 102c93b1f4 Merge pull request #42 from xiangli-cmu/server
Server.go refactor
2013-07-03 16:07:54 -07:00
Xiang Li fe55d87640 server should not be blocking will holding the lock 2013-07-03 10:10:43 -07:00
Xiang Li 97d60f605d reduce one gorotine to select in peer.go flush() 2013-07-03 10:05:15 -07:00
Xiang Li 5c5b489331 rafactor server.go 2013-07-03 09:53:46 -07:00
Xiang Li 95d369e659 init the log entries. 2013-07-03 09:51:20 -07:00
Xiang Li d3f5d2b7fc timeout for transfere. This helps when the node is far left behind. The server will not wait for sending a large package before send the other heartbeat 2013-07-03 09:45:57 -07:00
Ben Johnson 41d9f536ac Merge pull request #40 from xiangli-cmu/server
after stepdown candidate should return from collectvote and restart electiontimeout
2013-07-03 09:39:35 -07:00
Xiang Li 11de59fa06 after stepdown candidate should return from collectvote and restart election timeout 2013-07-02 20:51:19 -07:00
Ben Johnson 8b8791eb8f Merge pull request #39 from xiangli-cmu/server
Blocking the transportation when the server will stepdown
2013-07-02 19:31:55 -07:00
Xiang Li 88445830a0 close debugging 2013-07-02 18:24:19 -07:00
Xiang Li c87fa96a14 make stepdown blocking 2013-07-02 18:22:37 -07:00
Ben Johnson 73aa2c52e3 Merge pull request #38 from xiangli-cmu/master
change log ouput format to Lmicroseconds
2013-07-02 11:54:52 -07:00
Xiang Li 7a19090e5d change log ouput format to Lmicroseconds 2013-07-02 11:42:14 -07:00
Ben Johnson 4903668b23 Merge pull request #36 from xiangli-cmu/master
when promoted, election timeout should be stopped
2013-07-02 08:34:25 -07:00
Xiang Li c9ce5b4217 when promoted, election timeout should be stopped 2013-07-01 22:51:17 -07:00