Commit Graph

742 Commits

Author SHA1 Message Date
Jae Kwon c3a12e3cb8 ... 2015-05-05 23:47:29 -07:00
Jae Kwon da73e001ad BitArray takes a pointer receiver. More logging 2015-05-05 23:01:19 -07:00
Jae Kwon 44076e816d more consensus logging 2015-05-05 18:03:00 -07:00
Jae Kwon 32f7babf87 boost sendQueue for votes 2015-05-05 17:03:11 -07:00
Jae Kwon 8b6d489755 Update vote log 2015-05-05 16:58:26 -07:00
Jae Kwon cfb4a40855 adding more debug logs 2015-05-04 22:22:39 -07:00
Ethan Buchman ff87958f95 broadcast on newStepCh on switch to consensus reactor 2015-05-04 19:08:07 -04: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
Jae Kwon b92c0401e6 Made all JSON fields lower_case 2015-05-01 17:26:49 -07:00
Jae Kwon 5366d808ba Proposal WriteSignBytes is JSON 2015-04-27 21:06:36 -07:00
Jae Kwon ef42d41636 allow commit votes for the last height when we're in
RoundStepNewHeight
2015-04-25 15:03:40 -07:00
Jae Kwon 014166deb4 Rebond and the right height 2015-04-25 14:05:25 -07:00
Jae Kwon 27c193dd86 Error message in RebondTx so we know why it's failing. 2015-04-25 13:50:29 -07:00
Jae Kwon 9a8652e001 Include peer round states in the dump_consensus_state RPC call. 2015-04-25 11:49:26 -07:00
Jae Kwon 4bcfc1e4bb Merge pull request #55 from tendermint/sync
Sync
2015-04-22 11:15:31 -07:00
Jae Kwon 9513f601de Removed Log.File, all log goes out to stdout. 2015-04-22 11:07:34 -07:00
Ethan Buchman d54bf6bcd5 blockchain reactor to consensus reactor transition on catchup 2015-04-21 19:51:23 -07:00
Jae Kwon 2ba6f86f2e Add Network to SignBytes, to prevent network clashes 2015-04-20 23:59:52 -07:00
Jae Kwon 733dfcf4ad Add dump_consensus_state rpc command. Made it a little more secure
by moving the PrivValidator out of RoundState.
2015-04-20 20:39:42 -07:00
Jae Kwon df026f64fa Remoted bytes from logging messages 2015-04-20 18:51:20 -07:00
Jae Kwon 3f5d2a1ed9 StartTime is equal to now when nodes start up. 2015-04-20 16:33:23 -07:00
Jae Kwon 0db6b0b005 Maybe fixed validatorSet.IncrementAccum() 2015-04-19 09:55:06 -07:00
Jae Kwon 5bdd73f4a4 New genesis.json 2015-04-18 23:08:02 -07:00
Jae Kwon a9467414d6 Merge remote-tracking branch 'origin/websockets' into develop 2015-04-17 13:20:47 -07:00
Jae Kwon 44565872ae Fixed BlockchainMessage{} Decode issue.
Fixed Warn(UnknownMessage) issues.
2015-04-16 17:53:33 -07:00
Jae Kwon 89cfedeb73 Make all messages be registered as pointer receivers,
Warn on unknown messages.
2015-04-16 17:46:27 -07:00
Ethan Buchman d27e0bbad5 event cache and fireable interace 2015-04-16 00:08:58 -07:00
Ethan Buchman a1c5e32d76 fixes from review with jae 2015-04-15 22:19:29 -07:00
Jae Kwon df1d46d04d Errorf -> fmt.Errorf 2015-04-15 21:49:14 -07:00
Jae Kwon e5d34befde Remote TypeByte() 2015-04-14 15:57:16 -07:00
Ethan Buchman 2e918e8c0b rpc: websocket events testing 2015-04-14 01:39:41 -07:00
Ethan Buchman 85661de293 fire events, event urls 2015-04-13 21:42:48 -07:00
Jae Kwon 5b1c1eb0e0 ProposalMessage wrapper, warn on unknown messages 2015-04-13 08:40:37 -07:00
Jae Kwon 6d6f061f19 Support nil pointers for Binary.
If the thing does not already have a typebyte declared,
a fake one will be given (0x01).
A TypeByte of 0x00 is reserved for nil things.
No nil-dogs.
2015-04-12 17:46:16 -07:00
Ethan Buchman 8e24b12888 rpc: first successful websocket event subscription 2015-04-08 19:07:17 -05:00
Jae Kwon 7356556938 Some renames and small fixes. 2015-04-08 12:30:49 -07:00
Ethan Buchman 474bf31400 events: integrate event switch into services via Eventable interface 2015-04-07 00:34:26 -05:00
Jae Kwon f271ab7256 various changes. removed debora temporarily 2015-04-03 16:15:52 -07:00
Jae Kwon 13b6508ecd Package import path change 2015-04-01 17:30:16 -07:00
Ethan Buchman 60f166e823 tendermint2 2015-03-31 15:33:31 -07:00
Jae Kwon 79304b0dd3 Create BlockCache and TxCache for performance. 2015-03-28 23:44:07 -07:00
Jae Kwon fd0646fc4f Compare blockhashes in stageBlock() 2015-03-26 14:18:10 -07:00
Jae Kwon 7171823fc6 Fix blockpool bugs and clean up log messages. 2015-03-25 23:04:17 -07:00
Jae Kwon bd6d9d646d start peer before AddPeer() on reactors. 2015-03-25 13:22:46 -07:00
Jae Kwon a2b8318aac allow BlockchainReactor to reset ConsensusReactor state 2015-03-25 13:17:45 -07:00
Jae Kwon 788f9bfb93 started/stopped -> running; contiguous vs fast forward ConsensusState
updates.
2015-03-25 13:01:28 -07:00
Jae Kwon cebfae60c7 BlockchainReactor syncs first before ConsensusReactor. 2015-03-25 11:50:28 -07:00
Jae Kwon 08a83aa9fb Reactors can be stopped or started at any time. 2015-03-25 00:15:18 -07:00
Jae Kwon 0237d284cc Channel bytes are spelled fully, "XXXChannel" 2015-03-24 12:00:27 -07:00
Jae Kwon 87e1f76324 tendermint/block -> tendermint/types and tendermint/blockchain 2015-03-22 19:00:08 -07:00
Jae Kwon 06a440d9b2 use switch x := y.(type) form 2015-03-22 03:29:28 -07:00
Matthew Wampler-Doty 150959b182 Introducing make economy and docker 2015-03-18 23:27:27 -07:00
Matthew Wampler-Doty f03547007a App -> App() 2015-03-18 23:27:26 -07:00
Ethan Buchman 33f8943543 consensus: broadcast evidence tx on ErrVoteConflictingSignature 2015-03-18 23:23:56 -07:00
Jae Kwon 687815f6ed Less log lines to STDOUT 2015-01-20 15:31:31 -08:00
Jae Kwon 6c48642ff9 don't cache the block/header hashes. fixes a cache invalidation bug 2015-01-19 14:08:53 -08:00
Jae Kwon 249ae38068 test bondTx 2015-01-17 01:56:55 -08:00
Jae Kwon 165907fbb9 Ensure correct peer vote bitarray capacity 2015-01-16 02:51:54 -08:00
Jae Kwon d1a36d2ac2 Validation validation bug fix --> keep track of LastBondedValidators 2015-01-16 02:18:49 -08:00
Jae Kwon 0a6c28c2da block module -> import as blk 2015-01-15 22:43:15 -08:00
Jae Kwon 135894ea88 Dot import -> named import
Changed modulename_ to short module names
Also removed Unreader, replaced with PrefixdReader in select locations
2015-01-14 20:34:53 -08:00
Jae Kwon bf5738f9f8 Send NewRoundStepMessage/CommitMessage on AddPeer() 2015-01-13 17:52:27 -08:00
Jae Kwon 7afb75049f API to list accounts 2015-01-11 14:27:46 -08:00
Jae Kwon fe566739fd rpc/account; fixed mempool tx filter bug; fixed iavl_tree persistence
bug
2015-01-10 05:41:50 -08:00
Jae Kwon 4a81b06b6e Send SeenValidation to peer & use for proposals when we don't have LastCommits due to reboot 2015-01-09 02:40:36 -08:00
Jae Kwon 51c70dd8ac Write log also to a file. 2015-01-08 17:24:04 -08:00
Jae Kwon 05c642a84c Changed config to confer, TOML format. 2015-01-08 16:40:23 -08:00
Jae Kwon 325b88b083 time encoding in binary/reflect 2015-01-06 15:51:41 -08:00
Jae Kwon 7a8a0fefc7 type Ed25519[Signature|PubKey] struct{[]byte} -> []byte 2015-01-03 20:24:02 -08:00
Jae Kwon d20251849e Save blocks on catch-up too. 2014-12-31 16:53:48 -08:00
Jae Kwon 0dac36aa5d Do not panic when double-signing, return error. 2014-12-31 16:53:33 -08:00
Jae Kwon 0f399c42d4 Actually sends catch-up parts; BitArray is goroutine-safe 2014-12-30 21:29:49 -08:00
Jae Kwon 71c59cb36b improve debug output for action & step 2014-12-30 17:14:54 -08:00
Jae Kwon 40fec4f319 Stop peer routines upon connection failure 2014-12-30 16:49:23 -08:00
Jae Kwon 16c80fd65f fix race condition for SetHasAllValidationCommits; "binary" log
filtering
2014-12-30 14:45:26 -08:00
Jae Kwon 69903e5bc2 HasAllValidationCommits -> attempt no more 2014-12-30 14:36:45 -08:00
Jae Kwon 2ca882a9b6 Log which commits are being sent for catchup 2014-12-29 19:59:06 -08:00
Jae Kwon 3215cbf0d5 use tendermint/log15 2014-12-29 19:44:38 -08:00
Jae Kwon 07b5b7a8f2 various log fixes 2014-12-29 18:39:19 -08:00
Jae Kwon 0bfb389b35 change logger to log15 2014-12-29 18:09:06 -08:00
Jae Kwon 591d84947b Handle errors in DecodeMessage, added logging 2014-12-29 16:04:38 -08:00
Jae Kwon 5bace5cce8 Unreader to unread bytes 2014-12-29 15:14:54 -08:00
Jae Kwon 946fa21dc7 fix race conditions 2014-12-28 17:10:03 -08:00
Jae Kwon 70eb75dca7 Refactor consensus/vote_set_test.go 2014-12-23 23:20:49 -08:00
Jae Kwon bff93107ef UPNP + hairpin probing 2014-12-23 17:20:52 -08:00
Jae Kwon 62ff48c02b Documented Block, some renames 2014-12-23 01:35:54 -08:00
Jae Kwon 403d24a4b2 generated privValidator for testing uses tmp files
PrivValidator.Sign*() and .Save() lock on a mutex
2014-12-22 18:49:37 -08:00
Jae Kwon 383335d93c Added README docs for account/binary and renamed UInt -> Uint etc. 2014-12-22 18:10:17 -08:00
Jae Kwon 61d1635085 Fixed tests 2014-12-21 21:47:38 -08:00
Jae Kwon 6cacf6f09b RebondTx and more efficient IncrementAccum() 2014-12-16 05:45:40 -08:00
Jae Kwon 83d313cbe5 Refactor Tx, Validator, and Account structure 2014-12-16 05:45:40 -08:00
Jae Kwon 4424a85fbd start writing rpc 2014-12-16 05:43:23 -08:00
Jae Kwon bcb3ef3abd Update README.md 2014-11-20 05:28:01 -08:00
Jae Kwon 8718bd52a4 made ValidatorSet.Hash deterministic; fix off-by-1 bugs 2014-11-05 03:12:07 -08:00
Jae Kwon c035a383b7 runActionCh <- on a separate goroutine to avoid deadlock. 2014-11-05 03:12:06 -08:00
Jae Kwon 4aad34bafb set CommitTime upon addVote and +2/3 commits. 2014-11-05 03:12:06 -08:00
Jae Kwon b97d23e538 debug messages... 2014-11-05 03:12:06 -08:00
Jae Kwon 5f794d14fb nil bugs 2014-11-05 03:12:06 -08:00
Jae Kwon 5d1bdc6b1a Don't send bitarrays, just send height/round/type/index. 2014-11-05 03:12:06 -08:00
Jae Kwon 08d1b50570 Store BlockParts && also Validation on its own. 2014-11-05 03:12:06 -08:00
Jae Kwon da8e25343c Added LastBlockParts to state, and also validates. 2014-11-05 03:12:05 -08:00
Jae Kwon b7b923cc6b Validation tests 2014-11-05 03:12:05 -08:00
Jae Kwon e42771e36f fix tests 2014-11-05 03:11:39 -08:00
Jae Kwon f6093caac9 check *parts.rootHash before sending 2014-11-05 03:11:38 -08:00
Jae Kwon 09c20ddea1 RoundActionCommit* bug fixes 2014-11-05 03:11:38 -08:00
Jae Kwon 6416185a6f Revert to one action for commit-or-next-round 2014-11-05 03:11:38 -08:00
Jae Kwon 0f484b6315 broadcastVote sets peer's vote bitarray 2014-11-05 03:11:38 -08:00
Jae Kwon 3df3107479 Update peerState's vote bitarrays when needed. 2014-11-05 03:11:38 -08:00
Jae Kwon c3fc1a39ea BitArray sub fix 2014-11-05 03:11:38 -08:00
Jae Kwon 13d70e4112 stack trace in p2p/connection panics, bitArray fix 2014-11-05 03:11:37 -08:00
Jae Kwon 47caa47076 allow genesisTime IsZero -> now 2014-11-05 03:11:37 -08:00
Jae Kwon 647d26f7a0 consensus cleanup, privValidator config 2014-11-05 03:11:37 -08:00
Jae Kwon b615e51f95 basic main.go completion 2014-11-05 03:11:37 -08:00
Jae Kwon bccf0afe00 removed commitTime from VoteSet. 2014-11-05 03:11:37 -08:00
Jae Kwon 89418ee7af Added CommitTimeWait step, the state machine model changed a bit. 2014-11-05 03:11:36 -08:00
Jae Kwon 5ffe406f16 RunAction* directly on ConsensusState. 2014-10-21 01:18:46 -07:00
Jae Kwon f5d0794756 RoundAction // FinalizeCommit // LastCommits 2014-10-20 19:02:10 -07:00
Jae Kwon 9ea504030e pretty print ConsensusState 2014-10-18 01:42:33 -07:00
Jae Kwon ca1d8a54be POL tests 2014-10-17 16:48:27 -07:00
Jae Kwon 5c69736994 Add PartSet test. 2014-10-17 01:01:59 -07:00
Jae Kwon ac147e2353 everything but binary, common, and blocks are explicitly imported. 2014-10-16 16:00:48 -07:00
omni 300f12dd63 more VoteSet tests. 2014-10-15 23:55:52 -07:00
omni c5d9a93cbe Pretty print Vote, VoteSet 2014-10-15 20:15:38 -07:00
Jae Kwon 18fc7aec73 ... 2014-10-14 13:11:54 -07:00
Jae Kwon 810aeb7bcb fix tests 2014-10-12 21:14:10 -07:00
Jae Kwon 7652c5d0de fix tests 2014-10-11 21:27:58 -07:00
Jae Kwon 18e2d4bf48 implementing ExecTx... 2014-10-07 23:11:04 -07:00
Jae Kwon 0c206aa748 Signable interface. 2014-10-07 19:37:20 -07:00
Jae Kwon 31c1a1bbf7 remove mutex from state. 2014-10-07 01:05:54 -07:00
Jae Kwon 08f86176fc state save/load test. 2014-10-07 00:43:34 -07:00
Jae Kwon 1ae9ecd2a9 fix basic tests. 2014-10-04 19:16:49 -07:00
Jae Kwon 8e452aa0d2 fixed algorithm 2014-10-03 01:09:26 -07:00
Jae Kwon 9c1795a04d add mempool to consensus 2014-09-11 22:44:59 -07:00
Jae Kwon 8b606f9e66 s/Manager/Agent/g 2014-09-11 10:55:32 -07:00
Jae Kwon 6a8bb68888 vote ranks are tracked and used for efficiency. 2014-09-08 16:18:50 -07:00
Jae Kwon 7523f501fd commitTime is used to derive next startTime. :) 2014-09-08 15:32:08 -07:00
Jae Kwon 5dfa2ecebb share block parts when we're the proposer 2014-09-07 18:28:04 -07:00
Jae Kwon f030c69495 draft of consensus+state code, compiles. 2014-09-04 03:32:38 -07:00
Jae Kwon e53b148acf refactor from Binary centric model to global method model 2014-09-03 20:41:57 -07:00
Jae Kwon fa382a3b05 numeric fields are all native unboxed. 2014-08-30 16:28:51 -07:00
Jae Kwon d300a67bb1 saving development state... 2014-08-30 04:17:10 -07:00