Yicheng Qin
e89cc25c50
Merge pull request #1901 from yichengq/260
...
rafthttp: batch MsgProp
2014-12-10 21:16:07 -08:00
Yicheng Qin
3867c72c8a
raft: support to do multiple proposals in one message
2014-12-10 20:00:59 -08:00
Xiang Li
e4c0f5c1a8
Merge pull request #1895 from xiang90/snap_nodes
...
etcd: update conf when apply the confChange entry
2014-12-09 11:45:01 -08:00
Xiang Li
a5efbf826d
raft: drop nodes in softState
2014-12-09 11:43:52 -08:00
Yicheng Qin
0472ddf05f
Merge pull request #1890 from yichengq/259
...
raft: set raft.Commit too when setting raftLog.committed
2014-12-09 11:28:05 -08:00
Yicheng Qin
4804c45e14
raft: set raft.Commit too when setting raftLog.committed
2014-12-08 22:35:55 -08:00
Yicheng Qin
22dd3b039c
Merge pull request #1888 from yichengq/258
...
raft: increase term to 1 before append initial entries
2014-12-08 22:27:23 -08:00
Yicheng Qin
7317834417
raft: increase term to 1 before append initial entries
...
Because the term of new raft is 0, it is weird to have term-1 committed
entries in the log.
2014-12-08 22:21:39 -08:00
Xiang Li
ba45637ba3
raft: group step funcs
2014-12-08 15:29:54 -08:00
Xiang Li
099f4f10ea
raft: one line
2014-12-08 15:28:48 -08:00
Xiang Li
8ead428e76
raft: group getter funcs
2014-12-08 15:24:34 -08:00
Xiang Li
f73d059d80
raft: group configuration related funcs
2014-12-08 15:23:21 -08:00
Xiang Li
25313b1210
raft: move poll close to campaign
2014-12-08 15:21:57 -08:00
Xiang Li
d52c66ad42
raft: removed unused func
2014-12-08 15:20:43 -08:00
Xiang Li
62ed1de10d
raft: refactoring logging
2014-12-08 15:16:02 -08:00
Xiang Li
6cb7f2d9e9
raft: print out log when creating a newraft
2014-12-08 14:37:39 -08:00
Ben Darnell
ea4d645a83
raft: Ignore redundant addNode calls.
...
This avoids clobbering any state when bootstrapping entries are
applied twice.
2014-12-05 17:15:50 -05:00
Ben Darnell
3d91faf85a
Pre-apply the bootstrapping ConfChange entries.
...
This eliminates the need to fake an ApplyConfChange call before Campaign
in tests.
Fixes #1856 .
2014-12-05 15:35:39 -05:00
Xiang Li
6409a8bf0d
raft: filter out messages from unknow sender.
...
If we cannot find the `m.from` from current peers in the raft and it is a response
message, we should filter it out or raft panics. We are not targetting to avoid
malicious peers.
It has to be done in the raft node layer syncchronously. Although we can check
it at the application layer asynchronously, but after the checking and before
the message going into raft, the raft state machine might make progress and
unfortunately remove the `m.from` peer.
2014-12-05 11:34:56 -08:00
Xiang Li
182c30a41a
raft: refactor logging at node level
2014-12-04 21:03:06 -08:00
Xiang Li
197e6b1b20
Merge pull request #1858 from vlajos/typofixes-vlajos-20141204
...
typofixes - https://github.com/vlajos/misspell_fixer
2014-12-04 14:52:27 -08:00
Veres Lajos
3de2ab2c04
*: typofixes
...
https://github.com/vlajos/misspell_fixer
2014-12-04 22:51:19 +00:00
Xiang Li
a47690dd30
Merge pull request #1845 from xiang90/testunstable
...
raft: add TestUnstableTruncateAndAppend
2014-12-04 11:03:37 -08:00
Xiang Li
4ebd3a0b10
Merge pull request #1852 from xiang90/heartbeat
...
raft: add msgHeartbeat type
2014-12-04 10:25:46 -08:00
Xiang Li
149389cbfa
raft: add msgHeartbeat type
2014-12-04 08:29:31 -08:00
Yicheng Qin
e344774c10
Merge pull request #1850 from yichengq/247
...
raft: return 0 for term of compacted index
2014-12-03 17:23:32 -08:00
Yicheng Qin
34a468de36
raft: return 0 for term of compacted index
...
It is necessary to make this check because of the following case:
1. memory storage contains ents from index 0 to 50, and unstable has
ents from index 50 to 60.
2. raft receives an incoming snapshot with index 100.
3. raft restores its unstable to 100, but has not applied snapshot on memory storage.
4. raft receives an out-dated MsgApp from index 60.
5. raft finds the term of index 60 to check the match.
6. raft asks memory storage about the term of index 60 after it failed to get
it from unstable.
7. memory storage panics because it knows nothing about index 60.
2014-12-03 17:22:36 -08:00
Xiang Li
ddd9cb7345
raft: add TestUnstableTruncateAndAppend
2014-12-03 16:37:19 -08:00
Xiang Li
2caf4f5f22
raft: fix log format in sendAppend
2014-12-03 16:11:44 -08:00
Xiang Li
06a5892a18
raft: more logging
2014-12-03 14:46:24 -08:00
Xiang Li
8074a5b5a4
raft: fix error message format in test
2014-12-03 13:36:47 -08:00
Xiang Li
37ab463e86
raft: add TestUnstableStableTo
2014-12-03 13:26:35 -08:00
Xiang Li
7703d4942c
raft: add TestUnstableRestore
2014-12-03 13:03:56 -08:00
Xiang Li
be60c88603
Merge pull request #1842 from xiang90/unstable_test
...
raft: add TestUnstableFirstIndex
2014-12-03 11:50:39 -08:00
Yicheng Qin
63ed202db6
raft: print out term in decimal format
2014-12-03 11:33:51 -08:00
Xiang Li
48f75ca645
raft: add TestUnstableMaybeTerm
2014-12-03 11:30:59 -08:00
Xiang Li
058356d9bd
raft: add TestUnstableLastIndex
2014-12-03 11:11:31 -08:00
Xiang Li
98ebfa3468
raft: add TestUnstableFirstIndex
2014-12-03 11:11:11 -08:00
Yicheng Qin
23b32a6cbe
Merge pull request #1716 from yichengq/225
...
raft: panic if loaded commit is out of range
2014-12-02 22:14:12 -08:00
Yicheng Qin
38768e5396
raft: panic if loaded commit is out of range
2014-12-02 22:09:34 -08:00
Xiang Li
b3841afcc3
raft: do not restore snapshot if local raft has longer matching history
...
Raft should not restore the snapshot if it has longer matching history.
Or restoring snapshot might remove the matched entries.
2014-12-02 21:34:14 -08:00
Xiang Li
3209fd544b
raft: panic on bad slice
2014-12-02 17:48:03 -08:00
Xiang Li
79014556e9
Merge pull request #1831 from xiang90/fix_unstable
...
raft: fix unstable
2014-12-02 14:43:11 -08:00
Xiang Li
2f5b748a90
raft: clearify that the firstIndex might not be available.
2014-12-02 14:27:52 -08:00
Yicheng Qin
1c7b9317a9
Merge pull request #1833 from yichengq/244
...
raft: not call stableTo for restored snapshot
2014-12-02 13:20:39 -08:00
Yicheng Qin
551a56fb98
raft: not call stableTo for restored snapshot
...
Stable has been set when restoring the snapshot in raftlog, so we don't need
to set it after advance.
2014-12-02 13:10:35 -08:00
Xiang Li
b7ca56e3c8
raft: move good case of truncateAndAppend to the first place
2014-12-02 13:05:55 -08:00
Xiang Li
3cadaca1a3
Merge pull request #1830 from xiang90/raft_snap_log
...
raft: log snapshot events
2014-12-02 12:06:15 -08:00
Xiang Li
411063e14f
raft: log snapshot events
2014-12-02 11:57:10 -08:00
Xiang Li
788d1e59a2
raft: use index in entry
2014-12-02 10:25:27 -08:00