aboutsummaryrefslogtreecommitdiffstats
path: root/consensus/ethash/consensus.go
Commit message (Collapse)AuthorAgeFilesLines
* Change import go github.com/dexon-foundation/dexonWei-Ning Huang2019-04-091-8/+8
|
* all: simplify timestamps to uint64 (#19372)Martin Holst Swende2019-04-081-13/+8
| | | | | | | | | | | | | | * all: simplify timestamps to uint64 * tests: update definitions * clef, faucet, mobile: leftover uint64 fixups * ethash: fix tests * graphql: update schema for timestamp * ethash: remove unused variable
* vendor, crypto, swarm: switch over to upstream sha3 packageDave McGregor2019-01-041-2/+2
|
* ethash: documentation + cleanupMartin Holst Swende2018-09-171-8/+13
|
* ethash: less copy-paste for EIP 1234Martin Holst Swende2018-09-161-116/+67
|
* consensus: implement Constantinople EIP 1234EOS Classic2018-09-121-4/+70
|
* consensus/ethash: remove unnecessary type declaration (#17529)Mymskmkt2018-08-281-4/+4
|
* miner: fix state commit, track old work packages too (#17490)gary rong2018-08-231-2/+27
| | | | | | | | | | * miner: commit state which is relative with sealing result * consensus, core, miner, mobile: introduce sealHash interface * miner: evict pending task with threshold * miner: go fmt
* consensus/ethash: use DAGs for remote mining, generate asyncPéter Szilágyi2018-08-151-10/+40
|
* cmd, consensus/ethash, eth: miner push notificationsPéter Szilágyi2018-08-101-1/+1
|
* all: switch out defunct set library to different one (#16873)Ralph Caraveo III2018-07-161-3/+3
| | | | | | * keystore, ethash, eth, miner, rpc, whisperv6: tech debt with now defunct set. * whisperv5: swap out gopkg.in/fatih/set.v0 with supported set
* consensus/ethash: fix the algorithm of fakeBlockNumber in comments (#17166)Kwuaint2018-07-121-2/+2
| | | correct the algorithm in the comments for fakeBlockNumber, from "min" to "max".
* consensus/ethash: fixed typo (#16253)Kyuntae Ethan Kim2018-03-051-1/+1
|
* travis, build, consensus: drop support for Go 1.7Péter Szilágyi2018-02-281-8/+2
|
* consensus/ethash: improve cache/dataset handling (#15864)Felix Lange2018-01-231-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * consensus/ethash: add maxEpoch constant * consensus/ethash: improve cache/dataset handling There are two fixes in this commit: Unmap the memory through a finalizer like the libethash wrapper did. The release logic was incorrect and freed the memory while it was being used, leading to crashes like in #14495 or #14943. Track caches and datasets using simplelru instead of reinventing LRU logic. This should make it easier to see whether it's correct. * consensus/ethash: restore 'future item' logic in lru * consensus/ethash: use mmap even in test mode This makes it possible to shorten the time taken for TestCacheFileEvict. * consensus/ethash: shuffle func calc*Size comments around * consensus/ethash: ensure future cache/dataset is in the lru cache * consensus/ethash: add issue link to the new test * consensus/ethash: fix vet * consensus/ethash: fix test * consensus: tiny issue + nitpick fixes
* consensus/ethash: fix byzantium difficulty comment typo (#15842)gary rong2018-01-101-1/+1
|
* all: switch gas limits from big.Int to uint64Péter Szilágyi2018-01-031-12/+12
|
* consensus/ethash: fix overdue link (#15786)sunxiaojun20142017-12-311-1/+1
|
* accounts, consensus, core, eth: make chain maker consensus agnostic (#15497)gary rong2017-12-221-7/+12
| | | | | | | | | | * accounts, consensus, core, eth: make chain maker consensus agnostic * consensus, core: move CalcDifficulty to Engine interface * consensus: add docs for calcDifficulty function * consensus, core: minor comment fixups
* consensus/ethash: relax requirements when determining future-blocksMartin Holst Swende2017-12-081-4/+5
|
* cmd, consensus, eth: split ethash related config to it own (#15520)gary rong2017-11-241-5/+5
| | | | | | | | | | * cmd, consensus, eth: split ethash related config to it own * eth, consensus: minor polish * eth, consenus, console: compress pow testing config field to single one * consensus, eth: document pow mode
* cmd/puppeth: etherchain light block explorer for PoW netsPéter Szilágyi2017-11-211-4/+4
|
* consensus, core, params: rebrand Metro to ByzantiumPéter Szilágyi2017-09-141-10/+10
|
* consensus, core, tests: implement Metropolis EIP 649Péter Szilágyi2017-08-241-5/+20
|
* consensus, core: EIP 100 polishes, fix chain maker diffPéter Szilágyi2017-06-301-29/+38
| | | | | | | | | | | | This PR polishes the EIP 100 difficulty adjustment algorithm to match the same mechanisms as the Homestead was implemented to keep the code uniform. It also avoids a few memory allocs by reusing big1 and big2, pulling it out of the common package and into ethash. The commit also fixes chain maker to forward the uncle hash when creating a simulated chain (it wasn't needed until now so we just skipped a copy there).
* consensus/ethash: implement Metropolis EIP 100Jeffrey Wilcke2017-06-301-0/+48
|
* rlp, trie, contracts, compression, consensus: improve comments (#14580)S. Matthew English2017-06-121-3/+0
|
* consensus, core, core/vm, parems: review fixesJeffrey Wilcke2017-05-181-1/+1
|
* consensus/ethash: set time to current instead of parent timeJeffrey Wilcke2017-05-181-1/+1
|
* consensus, core/*, params: metropolis preparation refactorJeffrey Wilcke2017-05-181-22/+24
| | | | | | | | | | | | | | | | | | | | | | | | This commit is a preparation for the upcoming metropolis hardfork. It prepares the state, core and vm packages such that integration with metropolis becomes less of a hassle. * Difficulty calculation requires header instead of individual parameters * statedb.StartRecord renamed to statedb.Prepare and added Finalise method required by metropolis, which removes unwanted accounts from the state (i.e. selfdestruct) * State keeps record of destructed objects (in addition to dirty objects) * core/vm pre-compiles may now return errors * core/vm pre-compiles gas check now take the full byte slice as argument instead of just the size * core/vm now keeps several hard-fork instruction tables instead of a single instruction table and removes the need for hard-fork checks in the instructions * core/vm contains a empty restruction function which is added in preparation of metropolis write-only mode operations * Adds the bn256 curve * Adds and sets the metropolis chain config block parameters (2^64-1)
* Hive-test fixes (#14419)Martin Holst Swende2017-05-041-0/+9
| | | | | | | | | | * core: Fix for consensus test gasLimit > 2^63-1 https://github.com/ethereum/tests/blob/develop/BlockchainTests/bcInvalidHeaderTest.json#L238 * core: fix testcase for uncle gasUsage > gasLimit : https://github.com/ethereum/tests/blob/develop/BlockchainTests/EIP150/bcUncleHeaderValiditiy.json#L986 * math/big: rename TTM63m1 -> MaxBig63, + go fmt * core: documentation
* consensus/ethash: simplify concurrency in VerifyHeadersFelix Lange2017-04-131-81/+48
| | | | | This change removes a convoluted use of sync/atomic from VerifyHeaders. It also fixes the annoying error about future blocks.
* consensus, core, ethstats: use engine specific block beneficiary (#14318)Péter Szilágyi2017-04-121-0/+6
| | | | | | * consensus, core, ethstats: use engine specific block beneficiary * core, eth, les, miner: use explicit beneficiary during mining
* consensus/clique: Proof of Authority (#3753)Péter Szilágyi2017-04-101-21/+27
| | | | This PR is a prototype implementation of plugable consensus engines and the Clique PoA protocol ethereum/EIPs#225
* consensus, core: drop all the legacy custom core error typesPéter Szilágyi2017-04-061-21/+16
|
* core, consensus: pluggable consensus engines (#3817)Péter Szilágyi2017-04-051-0/+496
This commit adds pluggable consensus engines to go-ethereum. In short, it introduces a generic consensus interface, and refactors the entire codebase to use this interface.