X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;ds=sidebyside;f=consensus%2Fgeneral.go;h=f3bab4e09196125d2138450ba240fe31502d8192;hb=refs%2Fheads%2Fadd_log_for_votereward;hp=6b5a3173c733b0b5985b02db11f40a20aa453fd3;hpb=3fd8afc8c8f3e63807d525a073f81d061cbade6d;p=bytom%2Fvapor.git diff --git a/consensus/general.go b/consensus/general.go index 6b5a3173..f3bab4e0 100644 --- a/consensus/general.go +++ b/consensus/general.go @@ -2,6 +2,7 @@ package consensus import ( "encoding/binary" + "fmt" "github.com/vapor/protocol/bc" ) @@ -99,21 +100,6 @@ type Params struct { ProducerSubsidys []ProducerSubsidy } -// VaporDPOSConfig return the dpos consensus config -func VaporDPOSConfig() DPOSConfig { - dpos := DPOSConfig{ - NumOfConsensusNode: 10, - BlockNumEachNode: 12, - MinConsensusNodeVoteNum: uint64(100000000000000), - MinVoteOutputAmount: uint64(10000000000), - BlockTimeInterval: 500, - } - - dpos.RoundVoteBlockNums = uint64(uint64(dpos.NumOfConsensusNode) * dpos.BlockNumEachNode * 10) - dpos.MaxTimeOffsetMs = uint64(uint64(dpos.BlockTimeInterval) * dpos.BlockNumEachNode / 3) - return dpos -} - // ActiveNetParams is the active NetParams var ActiveNetParams = MainNetParams @@ -140,7 +126,15 @@ var MainNetParams = Params{ CoinbasePendingBlockNumber: uint64(7200), CoinbaseArbitrarySizeLimit: 128, }, - DPOSConfig: VaporDPOSConfig(), + DPOSConfig: DPOSConfig{ + NumOfConsensusNode: 10, + BlockNumEachNode: 12, + MinConsensusNodeVoteNum: uint64(100000000000000), + MinVoteOutputAmount: uint64(100000000), + BlockTimeInterval: 500, + RoundVoteBlockNums: 1200, + MaxTimeOffsetMs: 2000, + }, Checkpoints: []Checkpoint{}, ProducerSubsidys: []ProducerSubsidy{ {BeginBlock: 1, EndBlock: 63072000, Subsidy: 9512938}, @@ -163,7 +157,15 @@ var TestNetParams = Params{ CoinbasePendingBlockNumber: uint64(1200), CoinbaseArbitrarySizeLimit: 128, }, - DPOSConfig: VaporDPOSConfig(), + DPOSConfig: DPOSConfig{ + NumOfConsensusNode: 10, + BlockNumEachNode: 12, + MinConsensusNodeVoteNum: uint64(100000000000000), + MinVoteOutputAmount: uint64(100000000), + BlockTimeInterval: 500, + RoundVoteBlockNums: 1200, + MaxTimeOffsetMs: 2000, + }, Checkpoints: []Checkpoint{}, ProducerSubsidys: []ProducerSubsidy{ {BeginBlock: 1, EndBlock: 63072000, Subsidy: 15000000}, @@ -185,7 +187,15 @@ var SoloNetParams = Params{ CoinbasePendingBlockNumber: uint64(1200), CoinbaseArbitrarySizeLimit: 128, }, - DPOSConfig: VaporDPOSConfig(), + DPOSConfig: DPOSConfig{ + NumOfConsensusNode: 10, + BlockNumEachNode: 12, + MinConsensusNodeVoteNum: uint64(100000000000000), + MinVoteOutputAmount: uint64(100000000), + BlockTimeInterval: 500, + RoundVoteBlockNums: 1200, + MaxTimeOffsetMs: 2000, + }, Checkpoints: []Checkpoint{}, ProducerSubsidys: []ProducerSubsidy{ {BeginBlock: 0, EndBlock: 0, Subsidy: 24}, @@ -216,3 +226,11 @@ func BytomMainNetParams(vaporParam *Params) *Params { } return &Params{Bech32HRPSegwit: bech32HRPSegwit} } + +func InitActiveNetParams(chainID string) error { + var exist bool + if ActiveNetParams, exist = NetParams[chainID]; !exist { + return fmt.Errorf("chain_id[%v] don't exist", chainID) + } + return nil +}