go-ethereum/eth
Felix Lange 1f1ea18b54 core/state: implement reverts by journaling all changes
This commit replaces the deep-copy based state revert mechanism with a
linear complexity journal. This commit also hides several internal
StateDB methods to limit the number of ways in which calling code can
use the journal incorrectly.

As usual consultation and bug fixes to the initial implementation were
provided by @karalabe, @obscuren and @Arachnid. Thank you!
2016-10-06 15:32:16 +02:00
..
downloader ethereum, ethclient: add SyncProgress API endpoint 2016-09-06 13:41:43 +03:00
fetcher eth/fetcher: small typo fix (#2932) 2016-08-23 18:23:34 +03:00
filters rpc: refactor subscriptions and filters 2016-08-17 12:59:58 +02:00
gasprice eth: separate common and full node-specific API and backend service 2016-06-16 17:36:38 +02:00
api.go core, eth, trie: reuse trie journals in all our code 2016-09-28 11:27:31 +03:00
api_backend.go core/state: implement reverts by journaling all changes 2016-10-06 15:32:16 +02:00
backend.go cmd, eth: drop the blockchain version from cli/eth configs 2016-09-15 14:09:47 +03:00
backend_test.go accounts, core, eth: pass chain config for chain maker to test DAO 2016-07-15 16:52:55 +03:00
bad_block.go eth: enable bad block reports 2016-05-25 02:02:51 +02:00
bind.go accounts/abi/bind: use ethereum interfaces 2016-08-22 14:01:28 +02:00
cpu_mining.go cmd, common, console, eth, release: drop redundant "full"s 2016-06-30 13:03:26 +03:00
db_upgrade.go eth: fixed chaindb upgrade 2016-07-19 14:32:38 +02:00
gpu_mining.go cmd, common, console, eth, release: drop redundant "full"s 2016-06-30 13:03:26 +03:00
handler.go core, eth, internal, miner: optimize txpool for quick ops 2016-09-02 14:12:03 +03:00
handler_test.go eth, eth/downloader, eth/fetcher: delete eth/61 code 2016-07-22 13:17:19 +02:00
helper_test.go core, eth, internal, miner: optimize txpool for quick ops 2016-09-02 14:12:03 +03:00
metrics.go eth, eth/downloader, eth/fetcher: delete eth/61 code 2016-07-22 13:17:19 +02:00
peer.go eth, eth/downloader: better remote head tracking 2016-07-25 15:14:14 +03:00
protocol.go core, eth, internal, miner: optimize txpool for quick ops 2016-09-02 14:12:03 +03:00
protocol_test.go core, eth, internal, miner: optimize txpool for quick ops 2016-09-02 14:12:03 +03:00
sync.go core, eth, internal, miner: optimize txpool for quick ops 2016-09-02 14:12:03 +03:00
sync_test.go eth: skip transaction handling during fast sync 2016-05-17 14:17:20 +03:00