aboutsummaryrefslogtreecommitdiffstats
path: root/core/agreement.go
Commit message (Collapse)AuthorAgeFilesLines
* misc: migrate to github.com/tangerine-networkHao2019-09-171-3/+3
|
* Update import pathWei-Ning Huang2019-06-231-3/+3
|
* core: prevent vote being filtered (#576)Jimmy Hu2019-04-221-1/+2
|
* core: optimize handling for bad block (#574)Jimmy Hu2019-04-151-8/+23
| | | | | | * core: optimize handling for bad block * fix test
* core: add whether to report to VerifyPSig (#572)Jimmy Hu2019-04-151-3/+6
| | | | | | * core: add whether to report to VerifyPSig * fixup
* core: fix false alarm (#564)Jimmy Hu2019-04-111-6/+7
| | | | | | | | | | | | * ignore test simple * core: update voteFilter to filter old er round * circleci: save logs * core: move check notarySet to agrmgr * fixup
* core: change CRSSignature with bls (#563)Jimmy Hu2019-04-111-1/+1
|
* core: only qualified nodes can participant BA (#540)Jimmy Hu2019-04-021-5/+8
| | | | | | * core: only qualified nodes can participant BA * core: remove leader calculation from node set cache
* core: fix 'round not change' bug in receiver (#538)Jimmy Hu2019-04-021-0/+4
| | | | | | * core: remove round and round change height in recv * fixup
* core: clean TODOs (#539)Mission Liao2019-04-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * core: fix block timestamp (#529) * Remove TODO dMoment is still required when the block timestamp of the genesis block is still need to be verified. * Refine timestamp when preparing blocks * Add timestamp checking in sanity check * Revert code to patch position when preparing * Remove TODOs that seems meaningless now * Remove TODOs related to refactoring * core: remove finalization (#531) - Remove types.FinalizationResult, randomness field would be moved to `types.Block` directly. - Add a placeholder for types.Block.Randomness field for blocks proposed from round < DKGDelayRound. (refer to core.NoRand) - Make the height of the genesis block starts from 1. (refer to types.GenesisHeight) - The fullnode's behavior of core.Governance.GetRoundHeight is (assume round-length is 100): - round: 0 -> 0 (we need to workaround this) - round: 1 -> 101 - round: 2 -> 201 - test.Governance already simulate this behavior, and the workaround is wrapped at utils.GetRoundHeight. * core: fix issues (#536) fixing code in these condition: - assigning position without initializing them and expected it's for genesis - compare height with 0
* core: add log for restarting BA (#524)Jimmy Hu2019-03-281-0/+2
| | | | | | * core: add log for restart BA * Add log for changing round
* core: Update BA to the latest version (#519)Jimmy Hu2019-03-271-13/+13
| | | | | | | | | | * core: fastPreCom should not propose fastCom in RBA * add test for fix * core: update BA * core: fix test
* core: bring back agreement result (#515)Jimmy Hu2019-03-271-21/+81
| | | | | | | | | | * core: bring back agreement result * add logger * Fix * fixup
* core: Remove agreement result (#514)Jimmy Hu2019-03-271-0/+20
| | | | | | | | | | | | * core: remove agreement result for round with randomness * remove agr test in syncer * fixup * remove randomness field from agreement result * modify test
* core: merge notarySet and DKGSet (#488)Jimmy Hu2019-03-271-3/+8
| | | | | | | | | | | | | | * core: さよなら DKGSet * test logger * temporary fix before finalized * core: Sign psig on commit vote * Add syncer log * fixup
* core: fix required vote calculations (#513)Jimmy Hu2019-03-241-1/+1
|
* core: refine DKG aborting (#512)Mission Liao2019-03-231-2/+2
| | | | | | | | | | | | | | | | | | * Avoid aborting the DKG protocol registered later Although that DKG protocol would be registered after 1/2 round, both of them are triggered in separated go routine and we shouldn't assuem their execution order. * Capitalize logs * Add test * Return aborted when not running * Log DKG aborting result * Remove duplicated DKG abort
* core: fix 'failed to pre process block' message if unknown block is ↵Jimmy Hu2019-03-181-0/+6
| | | | confirmed (#495)
* core: switch round by block height (#450)Mission Liao2019-02-201-2/+2
|
* big-bang: single chain (#446)Mission Liao2019-02-191-5/+5
|
* core: fix closing closed channel (#445)Jimmy Hu2019-02-141-9/+17
|
* core: fast forward should close previous done() channel (#444)Jimmy Hu2019-02-131-1/+2
| | | | | | * core: fast forward faster * core: modify unit test
* core: pullvote faster (#442)Jimmy Hu2019-02-111-0/+3
|
* core: fix lock in agreement (#439)Jimmy Hu2019-02-011-2/+7
| | | | | | | | * core: fix lock in agreement * fix * terminate leader go routine if agreement already restarted to new position
* core: BA3.1 (#437)Jimmy Hu2019-01-281-3/+7
| | | | | | * core: BA 3.1 * core: fix test
* core: Add vote filter (#430)Jimmy Hu2019-01-241-5/+23
| | | | | | | | | | | | * core: ignore usless vote * core: export SkipBlockHash and NullBlockHash * core: add VoteFilter * Add test * New VoteFilter for each round
* core: optimize core (#428)Jimmy Hu2019-01-231-15/+29
| | | | | | | | | | | | | | * core: Use a channel to process ba confirmed block * change the implementation of done() to react faster * Fix restart * Wait tipRound to change * fix corner case * Check for context
* core: Fix BA3.0 implmenetation (#426)Jimmy Hu2019-01-211-12/+29
| | | | | | | | | | | | | | | | * types: Add vote type * core: remove stateFastRollback * core: rename lockRound to lockIter * core: Implement real ba3.0 * core: Add test for confirm * Fix VoteFastCom in agreement result * lockIter will always increase
* core: Fix stuffs (#422)Jimmy Hu2019-01-181-0/+6
| | | | | | * core: reduce syncing ba msg * core: fix checking period of agreement result
* core: find confirmed block in pending set and candidate set (#419)Mission Liao2019-01-161-6/+11
|
* core: Fix BA3.0 (#420)Jimmy Hu2019-01-151-5/+25
| | | | | | | | | | | | | | | | | | * Add Restart to Ticker * Change pre allocated size * Return NextTime from lattice * Few hacky fixes for BA * PullVote in FastRollback state * Add shallowBlock for agreementResult * Extend period * Fixup
* core: fix issues in consensus core (#415)Jimmy Hu2019-01-101-7/+3
|
* core: report fork (#409)Mission Liao2019-01-081-3/+16
|
* core: BA 3.0 (#408)Jimmy Hu2019-01-071-8/+60
| | | | | | | | | | | | | | * Add v3 enum * Add BA leader calculation * Fast BA * Add unittest for Fast BA * Add comment * Select leader in notarySet
* core: Add check for vote type (#406)Jimmy Hu2019-01-071-0/+4
|
* core: remove useless branching code (#403)wmin02019-01-071-11/+6
|
* utils: move authenticator to utils package (#378)Mission Liao2018-12-221-5/+6
|
* core: support NumChains change for BA modules (#339)Mission Liao2018-11-201-5/+6
|
* core: Fix data race (#335)Jimmy Hu2018-11-191-0/+2
|
* core: Fix issues in syncing mode (#329)Jimmy Hu2018-11-151-0/+8
|
* core: New BA (#295)Jimmy Hu2018-11-051-3/+5
|
* core: Fix BA stuffs (#293)Jimmy Hu2018-11-051-2/+11
|
* core: Fix fork vote (#290)Jimmy Hu2018-11-031-11/+13
|
* core: reset CRS in leader selector by round (#286)Mission Liao2018-11-021-4/+3
|
* Rename repo to dexon-consensusWei-Ning Huang2018-11-021-7/+7
|
* core: Fix various locking issues (#285)Jimmy Hu2018-11-021-6/+16
|
* core: fix possible fork vote (#283)Jimmy Hu2018-11-011-14/+18
|
* core: Add PullVotes to Network. (#281)Jimmy Hu2018-10-311-0/+5
|
* core: Do not process vote/block in agreement if it has stopped (#269)Jimmy Hu2018-10-291-4/+18
|
* core: Remove atomic (#266)Jimmy Hu2018-10-271-5/+5
|
* core: sync BA (#264)Jimmy Hu2018-10-261-4/+17
|
* core: Pull block (#263)Jimmy Hu2018-10-261-0/+16
|
* core: Add stop function to all components (#216)Jimmy Hu2018-10-171-3/+7
|
* core: New dexon ba (#210)Jimmy Hu2018-10-161-37/+91
|
* core: Fix corner cases (#211)Jimmy Hu2018-10-161-1/+4
| | | | | | * leader selector will choose smaller hash if distance to crs is the same * Set initial value of aID in BA before start
* core: Block randomness generation. (#178)Jimmy Hu2018-10-081-2/+3
|
* core: integrate authenticator (#150)Mission Liao2018-09-301-13/+6
|
* core: remove legacy mode (#149)Mission Liao2018-09-281-19/+14
|
* core: hide types.NodeID from full node. (#147)Mission Liao2018-09-281-6/+5
| | | | | | | | | * Refine core.Governance interface - Remove types.NodeID from interface declaration. - All parameter should be round based. * Add core.NodeSetCache * Agreement accepts map of nodeID directly. * test.Transport.Peers method return public keys.
* crypto: sigtopub to crypto package. remove SigToPubFn (#141)Jimmy Hu2018-09-261-4/+1
|
* core: move crypto to core/crypto (#140)Mission Liao2018-09-261-1/+1
| | | | | | | | | - Move key-holder to authenticator Make core.keyHolder public as core.Authenticator, it is not required to make this part an interface. - Make private when there is no need to go public. - Fix data race
* Rename validator* to node* (#120)Mission Liao2018-09-201-24/+24
|
* core: Fix BA Fork issues (#104)Jimmy Hu2018-09-131-8/+29
|
* misc: Polish BA. (#94)Jimmy Hu2018-09-051-12/+16
|
* core: BA-based consensus core. (#93)Jimmy Hu2018-09-041-31/+138
|
* core: Add a new structure `Position` and move `ShardID`, `ChainID` and ↵Jimmy Hu2018-09-031-10/+3
| | | | `Height` from `Block` (#89)
* core: Leader Selector. (#80)Jimmy Hu2018-08-301-2/+5
|
* core: Remove channel in agreement (#79)Jimmy Hu2018-08-291-19/+13
|
* core: Add agreement module (#77)Jimmy Hu2018-08-291-0/+262