Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | core: fix blockReward serialization | Wei-Ning Huang | 2019-06-12 | 1 | -1/+1 |
| | |||||
* | app: add cache mechanism to increase performance | Bojie Wu | 2019-06-12 | 1 | -0/+2 |
| | |||||
* | dex: remove uneeded info from block header | Wei-Ning Huang | 2019-06-12 | 1 | -1/+1 |
| | |||||
* | consensus: dexcon: fetch config from state | Wei-Ning Huang | 2019-06-12 | 1 | -10/+14 |
| | |||||
* | params: load blockReward from genesis JSON file | Wei-Ning Huang | 2019-06-12 | 1 | -2/+1 |
| | |||||
* | app: implement new insert blocks logic | Bojie Wu | 2019-06-12 | 1 | -1/+2 |
| | |||||
* | dex/core: misc bug fixes | Wei-Ning Huang | 2019-06-12 | 1 | -3/+10 |
| | |||||
* | app: add default block reward | Bojie Wu | 2019-06-12 | 1 | -1/+1 |
| | |||||
* | app: calculate block reward according to chain num | Bojie Wu | 2019-06-12 | 1 | -3/+2 |
| | |||||
* | dex: implement dexon application interface | Bojie Wu | 2019-06-12 | 1 | -1/+6 |
| | |||||
* | Change import go github.com/dexon-foundation/dexon | Wei-Ning Huang | 2019-06-12 | 17 | -84/+84 |
| | |||||
* | Use dex.Config instead of eth.Config | Wei-Ning Huang | 2019-06-12 | 1 | -0/+4 |
| | |||||
* | Add initial DEXON consensus engine implementation skeleton | Wei-Ning Huang | 2019-06-12 | 2 | -0/+159 |
| | |||||
* | all: simplify timestamps to uint64 (#19372) | Martin Holst Swende | 2019-04-08 | 4 | -21/+16 |
| | | | | | | | | | | | | | | * 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 package | Dave McGregor | 2019-01-04 | 3 | -9/+9 |
| | |||||
* | consensus/clique: fix comment typo (#18103) | mr_franklin | 2018-11-14 | 1 | -1/+1 |
| | |||||
* | consensus: extend getWork API with block number (#18038) | gary rong | 2018-11-08 | 4 | -8/+12 |
| | |||||
* | all: protect self-mined block during reorg (#17656) | gary rong | 2018-09-20 | 1 | -1/+1 |
| | |||||
* | consensus/clique: hide no transaction error (#17614) | gary rong | 2018-09-19 | 1 | -6/+2 |
| | |||||
* | consensus, ethdb, metrics: implement forced-meter (#17667) | gary rong | 2018-09-17 | 1 | -2/+2 |
| | |||||
* | Merge pull request #17675 from holiman/eip1234 | Péter Szilágyi | 2018-09-17 | 1 | -60/+82 |
|\ | | | | | Eip1234 | ||||
| * | ethash: documentation + cleanup | Martin Holst Swende | 2018-09-17 | 1 | -8/+13 |
| | | |||||
| * | ethash: less copy-paste for EIP 1234 | Martin Holst Swende | 2018-09-16 | 1 | -116/+67 |
| | | |||||
| * | consensus: implement Constantinople EIP 1234 | EOS Classic | 2018-09-12 | 1 | -4/+70 |
| | | |||||
* | | consensus/clique, core: chain maker clique + error tests | Péter Szilágyi | 2018-09-11 | 3 | -71/+184 |
|/ | |||||
* | consensus/clique: only trust snapshot for genesis or les checkpoint | Péter Szilágyi | 2018-09-10 | 1 | -1/+1 |
| | |||||
* | consensus/ethash: increase timeout in test (#17526) | Anton Evangelatov | 2018-09-03 | 1 | -2/+14 |
| | | | | This is an attempt to fix the flaky consensus/ethash tests under macOS. | ||||
* | consensus: fix comment typo (#17562) | ult-bobonovski | 2018-09-03 | 1 | -1/+1 |
| | |||||
* | consensus, miner: stale block mining support (#17506) | gary rong | 2018-08-28 | 7 | -107/+244 |
| | | | | | | | | | | * consensus, miner: stale block supporting * consensus, miner: refactor seal signature * cmd, consensus, eth: add miner noverify flag * cmd, consensus, miner: polish | ||||
* | consensus/ethash: remove unnecessary type declaration (#17529) | Mymskmkt | 2018-08-28 | 1 | -4/+4 |
| | |||||
* | miner: fix state commit, track old work packages too (#17490) | gary rong | 2018-08-23 | 6 | -9/+45 |
| | | | | | | | | | | * 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/clique, light: light client snapshots on Rinkeby | Péter Szilágyi | 2018-08-21 | 2 | -16/+17 |
| | |||||
* | consensus/ethash: reduce notify test aggressiveness | Péter Szilágyi | 2018-08-17 | 1 | -1/+1 |
| | |||||
* | consensus/ethash: use DAGs for remote mining, generate async | Péter Szilágyi | 2018-08-15 | 3 | -24/+83 |
| | |||||
* | cmd, consensus/ethash, eth: miner push notifications | Péter Szilágyi | 2018-08-10 | 6 | -62/+206 |
| | |||||
* | consensus/ethash: move remote agent logic to ethash internal (#15853) | gary rong | 2018-08-03 | 7 | -16/+483 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | * consensus/ethash: start remote ggoroutine to handle remote mining * consensus/ethash: expose remote miner api * consensus/ethash: expose submitHashrate api * miner, ethash: push empty block to sealer without waiting execution * consensus, internal: add getHashrate API for ethash * consensus: add three method for consensus interface * miner: expose consensus engine running status to miner * eth, miner: specify etherbase when miner created * miner: commit new work when consensus engine is started * consensus, miner: fix some logics * all: delete useless interfaces * consensus: polish a bit | ||||
* | consensus/clique: replace bubble sort by golang stable sort | hadv | 2018-07-24 | 1 | -11/+13 |
| | |||||
* | consensus: move test use only var/func to test(#17004) | Wenbiao Zheng | 2018-07-24 | 4 | -11/+11 |
| | |||||
* | all: switch out defunct set library to different one (#16873) | Ralph Caraveo III | 2018-07-16 | 1 | -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) | Kwuaint | 2018-07-12 | 1 | -2/+2 |
| | | | correct the algorithm in the comments for fakeBlockNumber, from "min" to "max". | ||||
* | consensus/clique: fixed documentation copy-paste issue (#17137) | LeoLiao | 2018-07-09 | 1 | -1/+1 |
| | |||||
* | consensus/ethash: fixed documentation typo (#17121) | Zak Cole | 2018-07-04 | 1 | -1/+1 |
| | | | "proot-of-work" to "proof-of-work" | ||||
* | consensus/ethash: reduce keccak hash allocations (#16857) | Felix Lange | 2018-06-04 | 1 | -6/+17 |
| | | | | | | | | | | Use Read instead of Sum to avoid internal allocations and copying the state. name old time/op new time/op delta CacheGeneration-8 764ms ± 1% 579ms ± 1% -24.22% (p=0.000 n=20+17) SmallDatasetGeneration-8 75.2ms ±12% 60.6ms ±10% -19.37% (p=0.000 n=20+20) HashimotoLight-8 1.58ms ±11% 1.55ms ± 8% ~ (p=0.322 n=20+19) HashimotoFullSmall-8 4.90µs ± 1% 4.88µs ± 1% -0.31% (p=0.013 n=19+18) | ||||
* | core, consensus: fix some typos in comment code and output log | hadv | 2018-05-19 | 1 | -1/+1 |
| | |||||
* | all: get rid of error when creating memory database (#16716) | gary rong | 2018-05-09 | 1 | -1/+1 |
| | | | | | | | | * all: get rid of error when create mdb * core: clean up variables definition * all: inline mdb definition | ||||
* | core/rawdb: separate raw database access to own package (#16666) | Péter Szilágyi | 2018-05-07 | 1 | -1/+2 |
| | |||||
* | consensus/ethash: fixed typo (#16665) | YH-Zhou | 2018-05-03 | 1 | -1/+1 |
| | |||||
* | build: enable goimports and varcheck linters (#16446) | thomasmodeneis | 2018-04-18 | 1 | -1/+2 |
| | |||||
* | consensus/ethash: fixed typo (#16253) | Kyuntae Ethan Kim | 2018-03-05 | 1 | -1/+1 |
| | |||||
* | travis, build, consensus: drop support for Go 1.7 | Péter Szilágyi | 2018-02-28 | 6 | -155/+61 |
| | |||||
* | metrics: pull library and introduce ResettingTimer and InfluxDB reporter ↵ | Anton Evangelatov | 2018-02-23 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | | | (#15910) * go-metrics: fork library and introduce ResettingTimer and InfluxDB reporter. * vendor: change nonsense/go-metrics to ethersphere/go-metrics * go-metrics: add tests. move ResettingTimer logic from reporter to type. * all, metrics: pull in metrics package in go-ethereum * metrics/test: make sure metrics are enabled for tests * metrics: apply gosimple rules * metrics/exp, internal/debug: init expvar endpoint when starting pprof server * internal/debug: tiny comment formatting fix | ||||
* | core, trie: intermediate mempool between trie and database (#15857) | Péter Szilágyi | 2018-02-06 | 1 | -0/+4 |
| | | | This commit reduces database I/O by not writing every state trie to disk. | ||||
* | consensus/ethash: improve cache/dataset handling (#15864) | Felix Lange | 2018-01-23 | 8 | -213/+208 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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 rong | 2018-01-10 | 1 | -1/+1 |
| | |||||
* | all: switch gas limits from big.Int to uint64 | Péter Szilágyi | 2018-01-03 | 2 | -14/+14 |
| | |||||
* | consensus/ethash: fix overdue link (#15786) | sunxiaojun2014 | 2017-12-31 | 1 | -1/+1 |
| | |||||
* | accounts, consensus, core, eth: make chain maker consensus agnostic (#15497) | gary rong | 2017-12-22 | 4 | -12/+41 |
| | | | | | | | | | | * 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 | ||||
* | Merge pull request #15629 from holiman/relax_futuretime | Péter Szilágyi | 2017-12-14 | 1 | -4/+5 |
|\ | | | | | consensus/ethash: relax requirements when determining future-blocks | ||||
| * | consensus/ethash: relax requirements when determining future-blocks | Martin Holst Swende | 2017-12-08 | 1 | -4/+5 |
| | | |||||
* | | all: use gometalinter.v2, fix new gosimple issues (#15650) | Zach | 2017-12-13 | 1 | -1/+1 |
|/ | |||||
* | cmd, consensus, eth: split ethash related config to it own (#15520) | gary rong | 2017-11-24 | 4 | -52/+80 |
| | | | | | | | | | | * 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 nets | Péter Szilágyi | 2017-11-21 | 1 | -4/+4 |
| | |||||
* | build: enable unconvert linter (#15456) | ferhat elmas | 2017-11-11 | 1 | -2/+2 |
| | | | | | | | | | * build: enable unconvert linter - fixes #15453 - update code base for failing cases * cmd/puppeth: replace syscall.Stdin with os.Stdin.Fd() for unconvert linter | ||||
* | cmd, consensus, core, miner: instatx clique for --dev (#15323) | Péter Szilágyi | 2017-10-24 | 2 | -4/+10 |
| | | | | | | | | * cmd, consensus, core, miner: instatx clique for --dev * cmd, consensus, clique: support configurable --dev block times * cmd, core: allow --dev to use persistent storage too | ||||
* | ethash: fix typo | Ernesto del Toro | 2017-10-13 | 1 | -3/+3 |
| | |||||
* | consensus/clique: add fork hash enforcement (#15236) | Péter Szilágyi | 2017-10-10 | 2 | -1/+6 |
| | |||||
* | consensus, core, params: rebrand Metro to Byzantium | Péter Szilágyi | 2017-09-14 | 1 | -10/+10 |
| | |||||
* | consensus, core, tests: implement Metropolis EIP 649 | Péter Szilágyi | 2017-08-24 | 1 | -5/+20 |
| | |||||
* | consensus: revert time.Until change | Egon Elbre | 2017-08-07 | 1 | -1/+1 |
| | |||||
* | consensus: fix megacheck warnings | Egon Elbre | 2017-08-07 | 2 | -3/+3 |
| | |||||
* | Merge pull request #14733 from karalabe/metro-eip100 | Péter Szilágyi | 2017-07-17 | 1 | -12/+69 |
|\ | | | | | consensus/ethash, core: implement Metropolis EIP 100 | ||||
| * | consensus, core: EIP 100 polishes, fix chain maker diff | Péter Szilágyi | 2017-06-30 | 1 | -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 100 | Jeffrey Wilcke | 2017-06-30 | 1 | -0/+48 |
| | | |||||
* | | tests: update tests and implement general state tests (#14734) | Felix Lange | 2017-07-11 | 1 | -2/+3 |
|/ | | | | | | | | | | | | | | Tests are now included as a submodule. This should make updating easier and removes ~60MB of JSON data from the working copy. State tests are replaced by General State Tests, which run the same test with multiple fork configurations. With the new test runner, consensus tests are run as subtests by walking json files. Many hex issues have been fixed upstream since the last update and most custom parsing code is replaced by existing JSON hex types. Tests can now be marked as 'expected failures', ensuring that fixes for those tests will trigger an update to test configuration. The new test runner also supports parallel execution and the -short flag. | ||||
* | Merge pull request #14596 from markya0616/valid_clique_vote | Péter Szilágyi | 2017-06-23 | 2 | -10/+23 |
|\ | | | | | consensus/clique: choose valid votes | ||||
| * | consensus/clique: minor cleanups | Péter Szilágyi | 2017-06-23 | 1 | -6/+7 |
| | | |||||
| * | consensus/clique: choose valid votes | mark.lin | 2017-06-14 | 2 | -11/+23 |
| | | |||||
* | | consensus/clique: fix typo and don't add snapshot into recents again | mark.lin | 2017-06-20 | 1 | -8/+7 |
| | | |||||
* | | rlp, trie, contracts, compression, consensus: improve comments (#14580) | S. Matthew English | 2017-06-12 | 9 | -22/+15 |
| | | |||||
* | | consensus: Fix `makedag` epoch | Konrad Feldmeier | 2017-06-12 | 1 | -2/+2 |
|/ | | | | | | | | | `geth makedag <blocknumber> <path>` was creating DAGs for `<blocknumber>/<epoch_length> + 1`, hence it was impossible to create an epoch 0 DAG. This fixes the calculations in `consensus/ethash/ethash.go` for `MakeDataset` and `MakeCache`, and applies `gofmt`. | ||||
* | consensus/clique: cache block signatures for fast checks | Péter Szilágyi | 2017-05-30 | 2 | -23/+34 |
| | |||||
* | consensus/ethash: fix TestCalcDifficulty | Felix Lange | 2017-05-24 | 1 | -1/+1 |
| | |||||
* | consensus, core, core/vm, parems: review fixes | Jeffrey Wilcke | 2017-05-18 | 1 | -1/+1 |
| | |||||
* | consensus/ethash: set time to current instead of parent time | Jeffrey Wilcke | 2017-05-18 | 1 | -1/+1 |
| | |||||
* | consensus, core/*, params: metropolis preparation refactor | Jeffrey Wilcke | 2017-05-18 | 2 | -23/+30 |
| | | | | | | | | | | | | | | | | | | | | | | | | 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) | ||||
* | common/bitutil, consensus/ethash: reusable bitutil package | Péter Szilágyi | 2017-05-05 | 2 | -86/+2 |
| | |||||
* | Hive-test fixes (#14419) | Martin Holst Swende | 2017-05-04 | 1 | -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/clique: fix overflow on recent signer check around genesis | Péter Szilágyi | 2017-05-03 | 1 | -1/+1 |
| | |||||
* | consensus/ethash: fix a timestamp update race | Péter Szilágyi | 2017-05-02 | 1 | -2/+4 |
| | |||||
* | consensus/ethash: close mmap before rename, windows limitation | Péter Szilágyi | 2017-04-14 | 1 | -5/+8 |
| | |||||
* | consensus/ethash: simplify concurrency in VerifyHeaders | Felix Lange | 2017-04-13 | 1 | -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ágyi | 2017-04-12 | 3 | -0/+17 |
| | | | | | | * consensus, core, ethstats: use engine specific block beneficiary * core, eth, les, miner: use explicit beneficiary during mining | ||||
* | consensus/clique, internal/web3ext: support hash based API queries (#14321) | Péter Szilágyi | 2017-04-12 | 5 | -30/+56 |
| | | | | | | * consensus/clique, internal/web3ext: support hash based API queries * consensus/clique: make RPC return types public | ||||
* | consensus/clique: Proof of Authority (#3753) | Péter Szilágyi | 2017-04-10 | 6 | -29/+1465 |
| | | | | This PR is a prototype implementation of plugable consensus engines and the Clique PoA protocol ethereum/EIPs#225 | ||||
* | consensus, eth: don't CPU mine by default during remote mining | Péter Szilágyi | 2017-04-07 | 2 | -1/+11 |
| | |||||
* | consensus, core: drop all the legacy custom core error types | Péter Szilágyi | 2017-04-06 | 2 | -21/+57 |
| | |||||
* | core, consensus: pluggable consensus engines (#3817) | Péter Szilágyi | 2017-04-05 | 14 | -0/+3671 |
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. |