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 |
|
Xiang Li
|
6a232dfc13
|
raft: add offset for log
|
2014-09-03 09:05:12 -07:00 |
|
Xiang Li
|
7be945f59b
|
etcd: glue
|
2014-09-03 09:05:12 -07:00 |
|
Yicheng Qin
|
8eac28350d
|
raft: avoid unexpected self-bootstrap state machine
|
2014-09-03 09:05:12 -07:00 |
|
Yicheng Qin
|
c86f484712
|
raft: make judge clear
|
2014-09-03 09:05:12 -07:00 |
|
Yicheng Qin
|
7dc02b947d
|
raft: refine TestVote
|
2014-09-03 09:05:12 -07:00 |
|
Yicheng Qin
|
095251f1fa
|
raft: Network supports discontinuous ids
|
2014-09-03 09:05:12 -07:00 |
|
Xiang Li
|
62bdcf6f49
|
raft: range over sm.ins
|
2014-09-03 09:05:12 -07:00 |
|
Xiang Li
|
e9cb510ef5
|
raft: node.Add needs the pubAddr field
|
2014-09-03 09:05:12 -07:00 |
|
Blake Mizerany
|
5778c49689
|
raft: set term in reset
|
2014-09-03 09:05:11 -07:00 |
|
Blake Mizerany
|
67808f8db1
|
raft: remove vestigial canStep
|
2014-09-03 09:05:11 -07:00 |
|
Blake Mizerany
|
6044b1a0d7
|
raft: break Step into pieces
|
2014-09-03 09:05:11 -07:00 |
|