Commit Graph

333 Commits

Author SHA1 Message Date
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
Ethan Buchman 2c595284d8 msgQueue and msgProcessor 2015-12-05 23:47:41 -05:00
Jae Kwon ef43af19ab Tendermint <-> Application refactor 2015-12-01 20:12:01 -08:00
Ethan Buchman 209bcf905e proposer selection tests. closes #53 2015-11-10 13:41:49 -08:00
Jae Kwon d69b5c5ab6 Conform to go-wire 1.0 2015-11-10 13:10:43 -08:00
Jae Kwon e12f9d10e7 Bare consensus refactor 2015-11-01 11:34:08 -08:00
Jae Kwon c4ed55d801 Refactor to move common libraries out of project 2015-10-22 17:39:06 -07:00
Jae Kwon 0a28cabd57 remove temporary limit on num block transactions 2015-10-12 09:42:53 -07:00
Jae Kwon 13e25ef164 Merge remote-tracking branch 'origin/consensus_tests' into develop 2015-10-11 18:20:19 -07:00
Jae Kwon ceed000c58 Use ResetFor... callback instead of EventSwitch for mempool new blocks 2015-09-29 12:31:34 -04:00
Ethan Buchman 12566f51af better mempool queueing 2015-09-28 22:58:02 -04:00
Ethan Buchman a26e0b4d48 consensus tests 2015-09-23 10:56:17 -04:00
Ethan Buchman 632e77c1cf rs.CommitRound 2015-09-15 16:13:39 -04:00
Ethan Buchman aab024f18d consensus events 2015-09-15 14:41:23 -04:00
Ethan Buchman 2b8157ce2a addVote takes index 2015-09-15 14:26:42 -04:00
Ethan Buchman a61a8176f1 fixes https://github.com/tendermint/halt/blob/master/case1/analysis.txt 2015-09-15 14:26:21 -04:00
Ethan Buchman 555ecb095d precommit nil if locked and no POL 2015-09-15 14:25:50 -04:00
Jae Kwon 5bf0040f14 Parts -> PartsHeader; *_parts -> *_parts_header in sign_bytes 2015-08-12 22:36:43 -07:00
Jae Kwon b96fd8a031 Beginning of complete merkle proofs 2015-08-11 14:12:30 -07:00
Jae Kwon 1b9fd811a1 RPCResponse.Result && EventData are registered interfaces; -skip_upnp option 2015-08-11 11:01:18 -07:00
Jae Kwon e86073ec96 Use rpc/client/ws_client; OnStart() returns error 2015-08-11 11:01:17 -07:00
Jae Kwon 3be3647dc8 tendermint/binary -> tendermint/wire 2015-07-28 12:18:17 -07:00
Jae Kwon e7c1febb65 Simplify Service/Reactor pattern 2015-07-22 06:21:21 -07:00
Ethan Buchman 8e50bf15de panic wrapper functions 2015-07-21 10:46:05 -04:00
Jae Kwon c0a64d74be Service log prettify 2015-07-20 17:02:18 -07:00
Jae Kwon 571a134318 BaseService and BaseReactor refactor and unification 2015-07-20 14:52:24 -07:00
Ethan Buchman bb4ca1407f info->notice, debug->info 2015-07-19 22:44:40 +00:00
Jae Kwon 1e7cc32597 tendermint/account -> acm 2015-07-19 09:40:55 -07:00
Jae Kwon f2f437a328 Improved consensus logging -- INFO shows round steps 2015-07-09 22:01:54 -07:00
Jae Kwon c79062ef6a Fix state/State race condition bug. 2015-07-09 21:46:15 -07:00
Jae Kwon f325675b83 Do not wipe cs.Votes upon SwitchToConsensus 2015-07-05 22:00:32 -07:00
Jae Kwon 1a1b9aaaab fix HeightVoteSet SetRound(0) bug which wipes out Prevotes; More logging for consensus/state addVote() 2015-07-05 21:01:59 -07:00
Jae Kwon 3cd459b60c Do not panic upon RoundStepType.String() for invalid type 2015-07-05 15:42:37 -07:00
Jae Kwon fc0a4bae4e Do not reset Proposal* when EnterNewRound(0) 2015-07-05 15:35:26 -07:00
Jae Kwon a14f2d197e consensus spec wording 2015-06-30 03:44:24 -07:00
Jae Kwon 26c192b047 Fix consensus:
* Use LastValidators when a Vote is received for the last height.
* Fix Validation.Height/Round to use FirstPrecommit.
2015-06-26 17:48:24 -07:00
Jae Kwon 9965dd5de6 uint* to int* whereever appropriate; https://www.reddit.com/r/golang/comments/2q5vdu/int_vs_uint/ 2015-06-25 20:28:34 -07:00
Jae Kwon 7a6b8944ab consensus/reactor cleanup 2015-06-25 14:05:18 -07:00
Jae Kwon 32811c3f86 comment cleanup 2015-06-25 12:52:16 -07:00
Jae Kwon 44216ab481 Unlocking from POL complete 2015-06-24 18:51:14 -07:00
Jae Kwon d05276ee87 wordings and clarifications, unnecessary code uncommenting 2015-06-24 17:05:52 -07:00
Jae Kwon 4d5fda7516 state machine cleanup 2015-06-24 14:43:04 -07:00
Jae Kwon 9e1794eaea Fixed tests 2015-06-24 14:04:40 -07:00
Jae Kwon 9b96e2e171 ProposalPOLRound... 2015-06-22 19:04:31 -07:00
Jae Kwon 7752405945 Draft of consensus/reactor refactor. 2015-06-21 18:09:51 -07:00
Jae Kwon 927823140b fast-forward when +2/3 precommits found for future round 2015-06-19 15:30:21 -07:00
Jae Kwon 15e80c6c28 fixes to state transition upon addVote 2015-06-19 15:30:21 -07:00
Jae Kwon 01b5540ffe consensus/state is 2-step asynchronous 2015-06-19 15:30:21 -07:00
Jae Kwon 5790ea9f43 consensus refactor: reconstruct LastCommits upon restart 2015-06-19 15:30:21 -07:00
Ethan Buchman 2045aee9cd pass chainID through sign interfaces 2015-05-29 18:14:19 -04:00
Ethan Buchman 8a2d9525f0 network > chain_id, put in genesis.json 2015-05-29 18:14:19 -04:00
Jae Kwon 75ef479547 Config is passed into each module. Remove tendermint/confer 2015-05-17 16:19:57 -07:00
Jae Kwon 85c8850ac2 Config names have no dots, are under_scored. 2015-05-12 17:40:29 -07:00
Jae Kwon 84c3fd9a85 more debug messages for consensus 2015-05-04 11:18:21 -07:00
Jae Kwon 9d1f1162e0 added more debug messages in consensus 2015-05-04 10:15:58 -07:00