Commit Graph

140 Commits (2ff75cda0e627b8981b96aa2849893e88ed07a70)

Author SHA1 Message Date
Yicheng Qin 27c9a0535c server: add tests for on-disk snapshot 2014-09-03 09:20:10 -07:00
Xiang Li 5fdc124578 etcd: clean up snap 2014-09-03 09:20:10 -07:00
Yicheng Qin a28dc4559b raft/etcd: recover node 2014-09-03 09:20:10 -07:00
Xiang Li 63489b9ef5 etcd: snap and wal init 2014-09-03 09:20:10 -07:00
Xiang Li a5df254e53 raft: add clusterId to snapshot 2014-09-03 09:20:08 -07:00
Yicheng Qin 9203f68894 server: add /v2/stats/self 2014-09-03 09:20:07 -07:00
Blake Mizerany c19932c9ba raft: prune unnecessary logging - fixes #15 2014-09-03 09:20:04 -07:00
Xiang Li 8e06333d45 raft: make State a protobuf type 2014-09-03 09:20:03 -07:00
Xiang Li d6c3ebb1a0 raft: make Info a protobuf type 2014-09-03 09:20:03 -07:00
Yicheng Qin 431ff3cce1 raft: minor change on code 2014-09-03 09:20:02 -07:00
Yicheng Qin 15029381e1 raft: fix promotable 2014-09-03 09:20:02 -07:00
Yicheng Qin 01c40fcf50 raft: not recover from outdated snapshot 2014-09-03 09:20:02 -07:00
Yicheng Qin ba63cf666d raft: add recover 2014-09-03 09:20:02 -07:00
Xiang Li 6030261363 etcd/raft: add snap 2014-09-03 09:20:02 -07:00
Xiang Li 38ec659cd6 raft: make Entry a protobuf type 2014-09-03 09:20:01 -07:00
Xiang Li 611d564865 raft: remove unused prevTerm field 2014-09-03 09:20:01 -07:00
Xiang Li 54b4f52e48 raft: add index to entry 2014-09-03 09:20:01 -07:00
Yicheng Qin 88e5bce63d wip: wal glue 2014-09-03 09:19:59 -07:00
Xiang Li b383cd5acf raft: refactor recover 2014-09-03 09:19:59 -07:00
Yicheng Qin 2bd74bc328 raft: add Load 2014-09-03 09:19:59 -07:00
Yicheng Qin e850c644da raft: return offset for unstableEnts 2014-09-03 09:19:58 -07:00
Xiang Li 311db876b0 raft: add unstableState 2014-09-03 09:19:58 -07:00
Xiang Li 609e13a240 raft: add node.Unstable
Be able to return all unstable log entries. Application must store unstable
log entries before send out any messages after calling step.
2014-09-03 09:19:58 -07:00
Xiang Li 1288e1f39d raft: log->raftlog 2014-09-03 09:19:58 -07:00
Xiang Li c7d1beaaa5 raft: add first level logging
We log the message to step and the state of the statemachine before and after
stepping the message.
2014-09-03 09:19:58 -07:00
Xiang Li 2665cc1cc8 raft: heartbeat should not contain entries 2014-09-03 09:19:57 -07:00
Xiang Li 13ec81c87f raft: fix panic in putVarint; varint can take up to 10 bytes for a 64bit integer. 2014-09-03 09:19:56 -07:00
Xiang Li 060de128a7 raft: add clusterId 2014-09-03 09:19:56 -07:00
Yicheng Qin 9793c518ab raft: forbid to use none as id 2014-09-03 09:19:56 -07:00
Yicheng Qin 79689872af raft: use From field to distinguish local message 2014-09-03 09:19:56 -07:00
Xiang Li bea28933d3 raft: init lead to none 2014-09-03 09:19:52 -07:00
Xiang Li 2e86cf2dc8 raft: add more randomness 2014-09-03 09:19:50 -07:00
Xiang Li 9c8aff66a1 raft: randomize election timeout 2014-09-03 09:19:50 -07:00
Xiang Li 3921295b21 raft: update lead to none when receives vaild msgVote 2014-09-03 09:19:50 -07:00
Yicheng Qin 5fc5681cb4 server: make removal go through run loop
It should not send to raft endpoint directly.
2014-09-03 09:19:50 -07:00
Yicheng Qin f1853b4364 raft: add msgDenial to deny removed nodes 2014-09-03 09:19:49 -07:00
Yicheng Qin 690edb2c56 raft: update lead for follower sm when receiving msgApp
Or follower may take `none` as its leader forever if it just launched
a failed election whose term is the same as the current leader.
2014-09-03 09:19:49 -07:00
Xiang Li 447d7dc51b raft: fix log append; add tests 2014-09-03 09:19:49 -07:00
Xiang Li 2ff3ce74c5 raft: add sm.Index 2014-09-03 09:05:14 -07:00
Xiang Li 0886e0ddf4 raft: change term to atomicInt 2014-09-03 09:05:14 -07:00
Xiang Li 30f4d9faea raft: change index and term to int64 2014-09-03 09:05:14 -07:00
Xiang Li e11c7f35b4 raft: add atomicInt 2014-09-03 09:05:14 -07:00
Xiang Li 3f435571d3 raft: atomic load id 2014-09-03 09:05:14 -07:00
Xiang Li c3f8eabac3 etcd: separate raft and client port 2014-09-03 09:05:13 -07:00
Xiang Li fc35324ba7 etcd: pass v2 kv api tests 2014-09-03 09:05:13 -07:00
Xiang Li 2af0ad505a raft: make id int64 2014-09-03 09:05:12 -07:00
Xiang Li 5651272ec8 raft: handle snapshot message 2014-09-03 09:05:12 -07:00
Xiang Li 2a11c1487c raft: sm.compact and sm.restore 2014-09-03 09:05:12 -07:00
Yicheng Qin 62a90e77b3 raft: send Normal with nil Data when leader is elected out 2014-09-03 09:05:12 -07:00
Xiang Li 064004b899 raft: add log compact 2014-09-03 09:05:12 -07:00