aboutsummaryrefslogtreecommitdiffstats
path: root/core/genesis_test.go
Commit message (Collapse)AuthorAgeFilesLines
* all: get rid of error when creating memory database (#16716)gary rong2018-05-091-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ágyi2018-05-071-1/+2
|
* core: flush out trie cache more meaningfully on stop (#16143)Péter Szilágyi2018-02-231-2/+4
| | | | | | * core: flush out trie cache more meaningfully on stop * core: upgrade legacy tests to chain maker
* core, trie: intermediate mempool between trie and database (#15857)Péter Szilágyi2018-02-061-3/+3
| | | This commit reduces database I/O by not writing every state trie to disk.
* cmd, consensus, core, miner: instatx clique for --dev (#15323)Péter Szilágyi2017-10-241-1/+1
| | | | | | | | * 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
* core, light: send chain events using event.Feed (#14865)Miya Chen2017-08-181-3/+1
|
* core: fix blockchain goroutine leaks in testsPéter Szilágyi2017-08-071-0/+2
|
* params: remove redundant consts, disable metro on AllProtocolChangesPéter Szilágyi2017-07-041-8/+8
|
* core, consensus: pluggable consensus engines (#3817)Péter Szilágyi2017-04-051-2/+2
| | | | | 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.
* core: refactor genesis handlingFelix Lange2017-03-231-0/+161
This commit solves several issues concerning the genesis block: * Genesis/ChainConfig loading was handled by cmd/geth code. This left library users in the cold. They could specify a JSON-encoded string and overwrite the config, but didn't get any of the additional checks performed by geth. * Decoding and writing of genesis JSON was conflated in WriteGenesisBlock. This made it a lot harder to embed the genesis block into the forthcoming config file loader. This commit changes things so there is a single Genesis type that represents genesis blocks. All uses of Write*Genesis* are changed to use the new type instead. * If the chain config supplied by the user was incompatible with the current chain (i.e. the chain had already advanced beyond a scheduled fork), it got overwritten. This is not an issue in practice because previous forks have always had the highest total difficulty. It might matter in the future though. The new code reverts the local chain to the point of the fork when upgrading configuration. The change to genesis block data removes compression library dependencies from package core.