Ethan Buchman
39493bcd9a
consensus: isProposer func
2017-07-28 22:11:10 -04:00
Ethan Buchman
e9b7221292
consensus: more comments
2017-07-20 00:59:28 -04:00
Ethan Buchman
74a3a2b56a
fix comments
2017-07-09 18:01:25 -04:00
Adrian Brink
b07d01f102
Add more comments on public functions and extra logging during 'enterPrevote'
...
Signed-off-by: Adrian Brink <adrian@brink-holdings.com>
2017-07-09 20:35:48 +02:00
Ethan Buchman
612726d9f6
consensus: better logging
2017-07-07 16:58:16 -04:00
Ethan Buchman
5888ddaab1
consensus: improve logging for conflicting votes
2017-07-07 13:41:50 -04:00
Ethan Buchman
0d1fa8e884
fixes from review
2017-06-28 11:12:45 -04:00
Ethan Buchman
468982ffe4
fixes
2017-06-23 22:12:45 -04:00
Ethan Buchman
2750343de5
Merge branch 'apply-megacheck' into unstable
2017-06-23 21:38:22 -04:00
Ethan Buchman
3c0128a680
undo some megacheck suggestions
2017-06-23 21:36:47 -04:00
Anton Kaliaev
b4ece65726
standardize key for errors (should be "err")
2017-06-14 12:50:49 +04:00
zramsay
cf31f8d06f
core: apply megacheck vet tool (unused, gosimple, staticcheck)
2017-05-29 23:11:40 -04:00
Ethan Buchman
30a19fc899
[consensus] Info->Debug for is a validator log msg
2017-05-18 11:26:15 +02:00
Adrian Brink
eb9ca23250
log whether node is a validator in each round
2017-05-16 14:01:52 +02:00
Anton Kaliaev
f8fdbe3dbc
changes as per Bucky's review
2017-05-13 16:22:51 +02:00
Anton Kaliaev
3e1343dc6b
has as a base16 string
2017-05-13 10:24:59 +02:00
Anton Kaliaev
f803544195
new logging
2017-05-13 10:24:58 +02:00
Ethan Frey
6b059e0063
Accept relative paths in all configs, TODO: must SetRoot
2017-05-04 22:46:40 -04:00
Ethan Frey
604bf03f3a
Pulled out all config structs (except p2p.PeerConfig) into config package
2017-05-04 22:46:40 -04:00
Ethan Buchman
92bafa7ecd
consensus: fix tests
2017-05-04 22:46:13 -04:00
Ethan Buchman
6afee8f117
rpc: fix tests
2017-05-04 22:45:13 -04:00
Ethan Buchman
1ef7c1d25b
cmd: fixes for new config
2017-05-04 22:43:55 -04:00
Ethan Buchman
75b6c5215f
fewer structs. remove viper from consensus
2017-05-04 22:43:55 -04:00
Ethan Buchman
fcf78a5da7
cleanup go-config/viper and some unnamed imports
2017-04-25 14:54:56 -04:00
Rigel Rozanski
cefb2bede0
adding viper
...
int
int
2017-04-25 13:42:22 -04:00
Ethan Buchman
d1926bcad1
use tmlibs
2017-04-21 18:12:54 -04:00
Ethan Buchman
935f70a346
comments and cleanup
2017-04-18 21:28:10 -04:00
Ethan Buchman
5109746b1c
Handshake uses ApplyBlock, no ConsensuState
2017-04-18 21:28:10 -04:00
Ethan Buchman
54b26869d5
consensus/wal: #HEIGHT -> #ENDHEIGHT
2017-04-18 21:27:31 -04:00
Ethan Buchman
cb279bf662
state: ABCIResponses, s.Save() in ApplyBlock
2017-04-18 21:27:31 -04:00
Anton Kaliaev
c3f1b08b6a
tx indexing (Refs #237 )
...
save transactions to blockstore
move to a separate module
benchmark KVIndexer
batch write transactions
Benchmarks:
```
BenchmarkKVIndexerIndex-2 100000 516300 ns/op
PASS
ok github.com/tendermint/tendermint/blockchain/tx 56.506s
5,16 s for 10000 transactions
1 s for 2000 transactions
```
```
BenchmarkKVIndexerIndex-2 h 3000000 8622 ns/op
PASS
ok github.com/tendermint/tendermint/blockchain/tx 34.210s
86 ms for 10000 transactions
16 ms for 2000 transactions
```
```
BenchmarkKVIndexerIndex1-2 5000000 7160 ns/op
BenchmarkKVIndexerIndex500-2 20000 1750411 ns/op
BenchmarkKVIndexerIndex1000-2 10000 3573973 ns/op
BenchmarkKVIndexerIndex2000-2 5000 7836851 ns/op
BenchmarkKVIndexerIndex10000-2 1000 33438980 ns/op
PASS
ok github.com/tendermint/tendermint/blockchain/tx 209.482s
7,8 ms for 2000 transactions
```
[state] write test for ApplyBlock
review comments
- move txindexer to state
- fix type
save Tx Index as well
do not store tx itself in the result
2017-04-10 22:44:07 +04:00
Ethan Buchman
4fd1471f11
remove BaseService.OnStart
2017-03-28 12:09:11 -04:00
Ethan Buchman
85e83934a1
fixes from review
2017-03-28 12:07:32 -04:00
Ethan Buchman
077cf13a1f
consensus: timeout on replayLastBlock
2017-03-27 15:41:45 -04:00
Ethan Buchman
b1cd677711
types: valSet LastProposer->Proposer and Proposer()->GetProposer()
2017-03-05 23:28:42 -05:00
Ethan Buchman
de0153a1c4
consensus: some more informative logging
2017-03-05 02:15:46 -05:00
Ethan Buchman
8ba79252c8
types: use mtx on PartSet.String()
2017-03-02 23:50:59 -05:00
Ethan Buchman
f9df4294f3
move some interfaces to types/services.go
2017-02-20 20:09:15 -05:00
Ethan Buchman
0765613778
move handshake to consensus package
2017-02-20 19:52:36 -05:00
Ethan Buchman
756213c5f5
check appHash
2017-02-20 17:08:38 -05:00
Ethan Buchman
bc67859672
make ReplayBlocks logic exhaustive
2017-02-20 16:32:48 -05:00
Ethan Buchman
44d472ddd3
comments from review
2017-02-18 22:15:59 -05:00
Ethan Buchman
0bec99fbd4
consensus: handshake replay test using wal
2017-02-17 19:12:05 -05:00
Ethan Buchman
edc5e272db
consensus: nice error msg if ApplyBlock fails
2017-02-17 10:57:09 -05:00
Ethan Buchman
6403b2f468
fixes for handshake replay through consensus
2017-02-17 10:51:05 -05:00
Ethan Buchman
cbe6dbe7a1
handshake replay through consensus using mockApp
2017-02-16 17:56:45 -05:00
Ethan Buchman
c147b41013
TMSP -> ABCI
2017-01-12 15:53:32 -05:00
Ethan Buchman
e7a12f8e38
cs.Wait()
2017-01-12 14:44:42 -05:00
Ethan Buchman
ce0c638005
little fix
2017-01-11 18:37:36 -05:00
Anton Kalyaev
a1fd312bb1
make progress asap on full precommit votes optional (Refs #348 )
2017-01-11 18:00:26 -05:00
Ethan Buchman
d68cdce2d5
consensus: check HasAll when TwoThirdsMajority
2017-01-11 17:53:46 -05:00
Ethan Buchman
55b4bfa1fe
consensus: let time.Timer handle non-positive durations
2017-01-11 10:24:40 -05:00
Ethan Buchman
12d92fd5db
Merge pull request #343 from tendermint/restart_test
...
Crash/Restart tests
2017-01-06 11:55:05 -08:00
Ethan Buchman
bae0bc02a6
consensus: be more explicit when we need to write height after handshake
2017-01-05 20:16:42 -08:00
Ethan Buchman
f30a9752e2
more fixes from review
2016-12-23 11:11:22 -05:00
Ethan Buchman
0c01b0ded9
state.State and wal.writeHeight after handshake
2016-12-22 22:10:36 -05:00
Ethan Buchman
40b08f2494
consensus: mv timeoutRoutine into TimeoutTicker
2016-12-19 22:29:32 -05:00
Ethan Buchman
8211fa6ce4
enterNewRound on HasAll
2016-12-19 20:12:37 -05:00
Ethan Buchman
faf23aa0d4
consensus: TimeoutTicker, skip TimeoutCommit on HasAll
2016-12-19 15:42:36 -05:00
Ethan Buchman
b74a97a4f6
update grpc broadcast tx
2016-12-02 00:29:25 -05:00
Ethan Buchman
0fe53dc5cf
remove privValIndex; Stale->AppHashIsStale
2016-12-02 00:27:36 -05:00
Ethan Buchman
6f8c91b651
use NewValidator; fix setPrivValidatorIndex
2016-11-22 20:38:14 -05:00
Ethan Buchman
e0db20c0cf
update privValidatorIndex on valset change
2016-11-22 20:38:14 -05:00
Ethan Buchman
655b6300f5
val set changes
2016-11-22 20:38:14 -05:00
Ethan Buchman
d7f6c0775a
remove LastCommitHeight
2016-11-22 20:38:14 -05:00
Ethan Buchman
a3d863f83b
consensus: track index of privVal
2016-11-22 20:38:14 -05:00
Ethan Buchman
c6a648fad7
consensus: lock before loading commit
2016-11-16 16:47:31 -05:00
Ethan Buchman
07597dfd45
post rebase fixes for BlockID, partSize
2016-11-16 16:13:17 -05:00
Ethan Buchman
4360c360a4
move handshake to state, use Handshaker, more tests
2016-11-16 13:29:22 -05:00
Ethan Buchman
3f90fcae48
fail tests and fix
2016-11-16 13:26:39 -05:00
Ethan Buchman
8ec1839f5d
save block b4 apply; track stale apphash
2016-11-16 13:26:39 -05:00
Ethan Buchman
fb9735ef46
rebase fixes and BeginBlock(hash,header)
2016-11-16 13:25:13 -05:00
Ethan Buchman
138de19e1e
test: app persistence
2016-11-16 13:25:13 -05:00
Ethan Buchman
d3ae920bd0
state: ApplyBlock
2016-11-16 13:25:13 -05:00
Jae Kwon
d83fc02597
MakePartSet takes partSize from config. fix replay test
2016-11-16 01:23:16 -05:00
Ethan Buchman
57da2e4af5
make byzantine logic testable
2016-11-15 18:45:36 -05:00
Jae Kwon
fd128c7180
Fix comments from review
2016-11-15 18:37:00 -05:00
Jae Kwon
655d829314
Fix proposal sign bytes. Start tracking blockID in POL
2016-11-15 18:35:17 -05:00
Jae Kwon
1173a85c85
Use BlockID everywhere
2016-11-15 18:34:58 -05:00
Jae Kwon
7221887330
VoteSet can handle conflicting votes. TODO: add more tests
2016-11-15 18:33:16 -05:00
Jae Kwon
3c5a2f55c2
Add validator index and address to Vote.
2016-11-15 18:33:16 -05:00
Jae Kwon
2aecb2a4a3
Ensure *_wal_dir exists
2016-11-05 09:15:34 -07:00
Jae Kwon
3d3d8b5b7b
cswal -> cs_wal_dir
2016-10-30 03:55:27 -07:00
Jae Kwon
1788a68b1c
Consensus WAL uses AutoFile/Group
2016-10-28 15:01:14 -07:00
Jae Kwon
480f44f16c
QuitService->BaseService
2016-10-28 12:14:24 -07:00
Jae Kwon
a9d8039082
Fix peer memleak; stop goroutine when peer is offline
2016-10-17 11:29:43 -07:00
Ethan Buchman
2113b6f4bb
rpc: use interfaces for pipe
2016-10-14 21:38:49 -04:00
Ethan Buchman
7dcb567e53
replay test data
2016-10-11 11:44:07 -04:00
Ethan Buchman
35d4cca8bb
type safe events
2016-10-10 03:10:29 -04:00
Ethan Buchman
206d00ed8c
fixes from review
2016-09-09 23:50:25 -04:00
Ethan Buchman
9fb84d66be
Merge pull request #268 from tendermint/replay
...
consensus: no sign err in replay; fix a race
2016-09-09 23:04:39 -04:00
Ethan Buchman
987dac9ee0
consensus: no sign err in replay; fix a race
2016-09-08 19:00:59 -04:00
Ethan Buchman
3a7ee13ece
proxy: typed app conns
2016-08-24 01:45:45 -04:00
Ethan Buchman
1110c5d37d
privVal.LastSignBytes and more replay tests
2016-08-14 13:33:03 -04:00
Ethan Buchman
c90bde3187
some comments
2016-08-09 20:31:53 -04:00
Ethan Buchman
8987d29bee
tests: broadcast_tx with tmsp; p2p
2016-07-24 14:08:47 -04:00
Ethan Buchman
05136ff09d
update some comments
2016-07-12 14:58:16 -04:00
Ethan Buchman
f44336d57d
consensus: don't print shared vars in cs.String()
2016-07-12 12:47:13 -04:00
Ethan Buchman
dd788c5631
consensus: fix race from OnStop accessing cs.Height
2016-07-11 20:55:07 -04:00
Ethan Buchman
8ca615c301
wait until txs removed from mempool to fire tx events
2016-07-05 17:03:09 -04:00
Jae Kwon
ad17090a0f
No global config
2016-05-08 15:00:58 -07:00
Ethan Buchman
39344a601d
flush before commit
2016-04-29 14:23:04 -07:00
Ethan Buchman
8e5e5c689f
lock mempool for commit and update. closes #202
2016-04-29 14:23:04 -07:00
Ethan Buchman
523a170c3e
EventDataTypeNewBlockHeader
2016-04-19 20:59:52 -04:00
Ethan Buchman
ae07c0171d
light weight block event
2016-04-19 20:45:33 -04:00
Ethan Buchman
79c9a9f03a
don't verify own block parts
2016-04-19 20:45:33 -04:00
Ethan Buchman
5e42c96267
crank the part size; prioritize data channel
2016-04-19 20:45:33 -04:00
Jae Kwon
39d72d5811
Remove fees
2016-04-03 04:51:44 -07:00
Jae Kwon
f17c4c1d57
s/Validation/Commit/g
2016-04-02 09:10:16 -07:00
Jae Kwon
2c1504f93c
Reap takes maxTxs
2016-03-06 15:08:32 -08:00
Ethan Buchman
06a7bb531b
consensus: dont allow peer round states to decrease
2016-03-05 16:41:54 -05:00
Ethan Buchman
94f3d201e1
drop mempool_reap. use block_size=-1 instead
2016-03-05 16:41:54 -05:00
Ethan Buchman
085b3bc1f2
consensus: don't wait for wal if conS not running
2016-03-03 06:32:08 +00:00
Ethan Buchman
4430073fab
dont log bad block part if round mismatch
2016-03-03 06:32:03 +00:00
Ethan Buchman
3891e4d66d
config: cswal_light, mempool_broadcast, mempool_reap
2016-03-03 06:31:59 +00:00
Ethan Buchman
69d906f7dd
drain internalMsgQueue and wait for cswal on quit
2016-02-29 18:02:22 -05:00
Ethan Buchman
c9ec9cf00e
config: block size, consensus timeouts, recheck tx
2016-02-29 17:04:33 -05:00
Jae Kwon
d31d3c58ad
Recheck txs
2016-02-14 17:00:33 -08:00
Ethan Buchman
50ac66f79b
fast sync fixes
2016-02-07 16:56:59 -08:00
Ethan Buchman
c0024cc7b2
log invalid txs
2016-01-31 20:00:02 -05:00
Jae Kwon
0f1cf243fd
Merge remote-tracking branch 'origin/replay'
2016-01-28 19:53:22 -08:00
Jae Kwon
8a3bba48e3
s/*EventDataRoundState/EventDataRoundState/g
2016-01-28 19:44:44 -08:00
Ethan Buchman
3cce757adc
move DialSeeds to go-p2p and add to rpc
2016-01-20 13:12:42 -05:00
Ethan Buchman
26f0e2bc2d
msgLogFP -> write ahead log
2016-01-18 14:44:45 -05:00
Ethan Buchman
3b06368569
rebase fixes
2016-01-14 20:15:33 -05:00
Ethan Buchman
6bcf53195f
consensus: use replay log to avoid sign regression
2016-01-14 18:58:12 -05:00
Ethan Buchman
56076d4d0e
some cleanup; log time with consensus msgs
2016-01-14 18:58:11 -05:00
Ethan Buchman
9fc0726504
timeoutProposeDelta
2016-01-14 18:58:11 -05:00
Ethan Buchman
c0c2a4b968
use validation round in reconstructLastCommit
2016-01-14 18:58:11 -05:00
Ethan Buchman
2b13386d7b
consensus: replay console
2016-01-14 18:58:11 -05:00
Ethan Buchman
6aaa5fb0bf
consensus: msg saving and replay
2016-01-14 18:58:11 -05:00
Jae Kwon
f100404362
Make EventDataRoundState use json:"-" instead of Getter/Setter
2016-01-14 11:07:31 -08:00
Ethan Buchman
0be13d1d27
move alert, events, rpc into own repos
2016-01-12 19:15:10 -05:00
Jae Kwon
7cf85c5e71
Change commit timeout to 1 sec for testing
2016-01-09 20:22:10 -08:00
Jae Kwon
5d06bb964b
Fix comments about AppHash, rollbacks, etc
2016-01-09 12:09:31 -08:00
Jae Kwon
3e3c0083c7
Make order be decided first; Remove TMSP Commit/Rollback
2016-01-08 16:51:20 -08:00
Jae Kwon
ccbcb9f418
Reduce commit timeout for tests
2016-01-02 20:22:36 -08:00
Ethan Buchman
94194fea46
fix logging proposal when we might not have it
2015-12-29 15:39:24 -05:00
Jae Kwon
d87667a0c2
Conform to go-wire new TypeByte behavior for broadcasts
2015-12-21 15:18:16 -08:00
Ethan Buchman
c3a8f202ab
consensus: fix negative timeout; log levels
2015-12-15 14:44:58 -05:00
Ethan Buchman
b9e143d956
Fireable -> EventSwitch; rs in EventDataRoundState; fixes from review
2015-12-14 00:38:19 -05:00
Ethan Buchman
261647a012
Enter* -> enter*. Comments/fixes from Jae
2015-12-13 20:48:09 -05:00
Ethan Buchman
4483971776
conR uses events to trigger newstep & hasvote broadcasts
2015-12-13 19:30:15 -05:00
Ethan Buchman
9dea9539b4
fix consensus tests
2015-12-13 16:41:13 -05:00
Ethan Buchman
07a96a703e
move updateToState back
2015-12-12 17:22:48 -05:00
Ethan Buchman
e30d1bbd04
updateRoundStep consistency
2015-12-12 16:25:49 -05:00
Ethan Buchman
736bc1f02f
public interface; max steps; move updateToState
2015-12-12 01:28:33 -05:00
Ethan Buchman
c3f880e758
fire timeout events in handleTimeout; internalMsgQueue
2015-12-11 11:57:15 -05:00
Ethan Buchman
d9b55101e5
move routines to consensus state. drop locks and other go routines
2015-12-10 11:41:18 -05:00
Ethan Buchman
4b6e992a47
timeoutRoutine
2015-12-08 16:00:59 -05:00