Ben Johnson
27e9132796
Integrate stateless broker into remaining packages.
2015-03-10 14:53:45 -06:00
Joseph Rothrock
9b63eed767
Merge branch 'master' of github.com:influxdb/influxdb into 1753
...
Conflicts:
CHANGELOG.md
2015-03-06 12:37:15 -08:00
Joseph Rothrock
771ef1cec3
Don't Panic on Missing Dirs
...
Issue: 1753
Figure out what's missing, create it, and keep going.
2015-03-06 12:11:02 -08:00
dgnorton
3454523bae
Merge pull request #1864 from influxdb/fix-1180
...
fix #1180 : race in startStateLoop
2015-03-06 13:21:05 -05:00
Ben Johnson
cae0e85ed7
Update higher term on leader during stream request.
...
This commit adds a check for newer terms in the streaming endpoint.
2015-03-06 11:12:54 -07:00
David Norton
cb780d82d5
fix #1180 : race in startStateLoop
2015-03-06 13:09:46 -05:00
Todd Persen
11fce7cb33
Seed the random Int63 generator.
2015-02-23 23:19:56 -08:00
Ben Johnson
9dd299fe80
Add small delay for single node heartbeat.
...
This commit adds a small 10ms delay to the heartbeat when there is only
one node in the cluster. This code needs a larger fix to avoid heartbeats
with a single node cluster but this should work well in the short term.
2015-02-23 16:18:19 -07:00
Ben Johnson
64cc1fb0f6
Lower wait interval to speed up tests.
2015-02-21 08:19:28 -07:00
Ben Johnson
a7a8e0bba4
Fix candidate heartbeat step down.
2015-02-20 13:52:45 -07:00
Ben Johnson
9ff2969d38
Add set up code for raft internal tests.
2015-02-20 13:52:12 -07:00
Ben Johnson
02764a8a12
Fix raft last log index.
2015-02-20 11:02:30 -07:00
Ben Johnson
88ef9948c5
minor raft fixes
2015-02-19 11:24:23 -07:00
Ben Johnson
be22933c49
Additional raft fixes.
2015-02-18 15:37:42 -07:00
Ben Johnson
f6ceb9bd32
Refactor raft state handling.
...
This commit changes the state handling of the raft log. The actions
for related to each raft state are strictly confined within that state's
loop. To transition between states, the raft log now much clean up all
its actions before moving on.
This fixes issues where goroutines were kicked off for one state but
were delayed in their scheduling so they would begin after the log
had already changed to another state.
2015-02-16 15:45:37 -07:00
Ben Johnson
d75bf86722
Fix transport test comment.
2015-02-06 17:50:48 -07:00
Ben Johnson
d2fb16e901
Clarify quorum code.
2015-02-06 17:50:03 -07:00
Ben Johnson
57c14987a6
Raft package fixes.
...
This commit includes various fixes to improve the stability of the raft package tests and benchmarks.
2015-02-06 12:46:50 -07:00
Ben Johnson
9c66efa015
Clarify raft trace logging.
2015-02-05 07:35:08 -07:00
Ben Johnson
6c14371df4
Refactor raft package.
...
This commit refactors the raft package to more loosely couple the individual parts. The clock is now broken into
an interface that signals individual actions in the log. The transport has been mocked to allow more control over
the log tests. The handler's log has been mocked to separate its testing from the log itself.
2015-02-04 18:59:06 -07:00
Cory LaNou
4ecd5a0596
skipping racy raft tests
2015-01-30 13:50:59 -07:00
Cory LaNou
a6ac75c613
disable more racy tests
2015-01-30 13:45:07 -07:00
Cory LaNou
24bc6eaa6e
skipping racy raft tests
2015-01-30 13:44:29 -07:00
Cory LaNou
347c34b4f1
skipping racy raft test
2015-01-30 13:44:29 -07:00
Cory LaNou
98354e2877
raft test still failing, seeing if time tests fail on build, pass locally
2015-01-30 13:44:29 -07:00
Philip O'Toole
7df23eb7e6
Disable racy Raft test until fixed
2015-01-30 10:19:05 -08:00
Philip O'Toole
59c5366a2b
Skip TestHTTPHandler_HandleHeartbeat until fixed
...
Fails on travis:
UN TestHTTPHandler_HandleHeartbeat
[raft] 2015/01/30 06:52:42 log open: created at /tmp/raft-667391350, with ID 0, term 0, last applied index of 0
[raft] 2015/01/30 06:52:42 log state change: stopped => leader
[raft] 2015/01/30 06:52:42 log initialize: promoted to 'leader' with cluster ID 1, log ID 1, term 1
panic: runtime error: slice bounds out of range
goroutine 32 [running]:
github.com/influxdb/influxdb/raft.func·007(0x0, 0x0)
/home/travis/gopath/src/github.com/influxdb/influxdb/raft/log.go:953 +0x5d5
2015-01-29 22:55:11 -08:00
Philip O'Toole
8cd7251aa8
Increase time "added" for single node test
...
Wait()ing for the log to be applied can take 2 loops. Due to this, the
timer used to trigger the 3rd check is pushed too far into the future.
So push the clock even farther into the future so the test doesn't hang
and can then be re-enabled.
2015-01-29 22:08:40 -08:00
Philip O'Toole
9943f86cf4
Enable module-level logging
2015-01-29 15:07:58 -08:00
Ben Johnson
3601c3c79f
Fix restarts and broker redirection.
2015-01-28 01:09:50 -05:00
Cory LaNou
494bac7f9e
re-enable full suite testing, skip intermittently failing tests
2015-01-26 09:56:04 -07:00
Cory LaNou
639ee30d79
WriteEntryTo -> WriteEntriesTo
2015-01-13 11:27:49 -07:00
Cory LaNou
b815cb5689
go vet without arguments will now pass cleanly
2015-01-13 11:15:45 -07:00
Philip O'Toole
295d63cb57
More vet fixes
2015-01-11 15:14:22 -08:00
Ben Johnson
50a0826026
Add broker snapshot/restore and CLI join.
2015-01-06 17:21:32 -07:00
Ben Johnson
6941dc0c61
Fix tests for /raft prefix.
2014-12-30 11:57:57 -07:00
Philip O'Toole
b124a46fe2
Prefix remaining Raft paths with 'raft'
2014-12-19 16:31:40 -05:00
Philip O'Toole
ede3b9511e
Explicitly use 'raft' in URL path for Raft ops
2014-12-19 16:18:48 -05:00
Philip O'Toole
3ab0c5b270
Add logging of Raft initialization
2014-12-19 16:18:01 -05:00
Philip O'Toole
72d73b800c
Use existing config variable, not a new one
...
Without this, log remained closed. Always.
2014-12-19 13:08:09 -05:00
Philip O'Toole
8049c34c7d
Revert "Merge pull request #1174 from otoolep/increase_add_time"
...
This reverts commit 555346627e
, reversing
changes made to af86d7cb1c
.
2014-11-26 07:56:19 -08:00
Philip O'Toole
68d30ae722
Increase time "added" for single node test
...
Wait()ing for the log the be applied can take 2 loops. Due to this the
timer used to trigger the 3rd check is pushed too far into the future.
So push the clock even farther into the future.
As a result, all Travis testing can be re-enabled.
2014-11-25 22:52:58 -08:00
Ben Johnson
37ee2ac23c
Remove engine, parser, and Makefile.
2014-11-17 15:54:35 -07:00
Ben Johnson
5fe566466e
Add messaging and raft test coverage.
2014-11-12 22:32:42 -07:00
Ben Johnson
ab0efbe677
Config encoding fixes.
2014-11-11 21:14:32 -07:00
Ben Johnson
eef79f8aff
Add raft configuration encoding test coverage.
2014-11-11 20:30:21 -07:00
Ben Johnson
4dd03b6e06
Add influx log.
2014-10-01 20:49:21 -06:00
Ben Johnson
4ac988b483
Improve test coverage, elections.
2014-09-28 11:38:08 -06:00
Ben Johnson
a90622bf04
Refactor election code.
2014-09-27 17:28:03 -06:00
Ben Johnson
3a1b8b1a22
Replace simulation test coverage.
2014-09-27 16:24:59 -06:00
Ben Johnson
7f023ecfc2
Remove simulation testing.
2014-09-26 14:57:33 -06:00
Ben Johnson
a175bcce34
Simulation testing changes.
2014-09-26 14:50:41 -06:00
Ben Johnson
87499cab1b
Move config and encoding into different files.
2014-09-24 17:47:10 -06:00
Ben Johnson
3a7ef7684f
Refactor simulation testing framework.
2014-09-24 17:15:21 -06:00
Ben Johnson
425bd0aa2e
Fix race conditions, tests.
2014-09-22 19:43:15 -06:00
Ben Johnson
04a7ea32ae
Refactor in-memory entries, add snapshotting.
2014-09-19 18:32:53 -06:00
Ben Johnson
d16d11c47e
raftbench and log optimization.
2014-09-17 10:08:47 -06:00
Ben Johnson
ad735ad1cd
Add raftbench CLI.
2014-09-15 19:29:25 -06:00
Ben Johnson
cbc84636de
Basic multi-node simulation testing.
2014-09-13 18:12:32 -06:00
Ben Johnson
14135c4fe2
Configuration management.
2014-09-10 18:28:12 -06:00
Ben Johnson
aa514f6849
Add HTTP handler, begin multi-node testing.
2014-09-09 17:01:48 -06:00
Ben Johnson
97f24d08a1
Add HTTP transport.
2014-09-08 17:03:27 -06:00
Ben Johnson
7d4c3e9c6f
Add single node simulation.
2014-09-08 15:39:05 -06:00
Ben Johnson
44a5f90acf
Rough log segment read/write.
2014-09-06 21:10:06 -06:00
Ben Johnson
1cd720df2a
raft.md
2014-09-04 07:12:41 -06:00
Ben Johnson
a527f8543b
raft.md
2014-09-04 06:32:32 -06:00
Ben Johnson
883abc7564
Remove TODO
2014-09-03 16:24:50 -06:00
Ben Johnson
b4acaafca0
Basic structure, encoder, decoder.
2014-09-03 16:07:39 -06:00