diff options
author | Péter Szilágyi <peterke@gmail.com> | 2017-12-14 17:28:42 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-14 17:28:42 +0800 |
commit | 5129ef22c2aaa3e8c733fe7c0fb6eff64457426c (patch) | |
tree | d06c8293010602153161c6e718b40e04eae2312f /consensus | |
parent | 3654aeaa4f87452ac5bc801a18808189595e2ef8 (diff) | |
parent | 79d5e5593fc86190a5f67d9c48b3de365075c9cd (diff) | |
download | dexon-5129ef22c2aaa3e8c733fe7c0fb6eff64457426c.tar.gz dexon-5129ef22c2aaa3e8c733fe7c0fb6eff64457426c.tar.zst dexon-5129ef22c2aaa3e8c733fe7c0fb6eff64457426c.zip |
Merge pull request #15629 from holiman/relax_futuretime
consensus/ethash: relax requirements when determining future-blocks
Diffstat (limited to 'consensus')
-rw-r--r-- | consensus/ethash/consensus.go | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/consensus/ethash/consensus.go b/consensus/ethash/consensus.go index 775419e06..2bdb18677 100644 --- a/consensus/ethash/consensus.go +++ b/consensus/ethash/consensus.go @@ -36,9 +36,10 @@ import ( // Ethash proof-of-work protocol constants. var ( - FrontierBlockReward *big.Int = big.NewInt(5e+18) // Block reward in wei for successfully mining a block - ByzantiumBlockReward *big.Int = big.NewInt(3e+18) // Block reward in wei for successfully mining a block upward from Byzantium - maxUncles = 2 // Maximum number of uncles allowed in a single block + FrontierBlockReward *big.Int = big.NewInt(5e+18) // Block reward in wei for successfully mining a block + ByzantiumBlockReward *big.Int = big.NewInt(3e+18) // Block reward in wei for successfully mining a block upward from Byzantium + maxUncles = 2 // Maximum number of uncles allowed in a single block + allowedFutureBlockTime = 15 * time.Second // Max time from current time allowed for blocks, before they're considered future blocks ) // Various error messages to mark blocks invalid. These should be private to @@ -231,7 +232,7 @@ func (ethash *Ethash) verifyHeader(chain consensus.ChainReader, header, parent * return errLargeBlockTime } } else { - if header.Time.Cmp(big.NewInt(time.Now().Unix())) > 0 { + if header.Time.Cmp(big.NewInt(time.Now().Add(allowedFutureBlockTime).Unix())) > 0 { return consensus.ErrFutureBlock } } |