go-ethereum/core
Felix Lange 3caf16b15f
core: remove stray account creations in state transition (#16470)
The 'from' and 'to' methods on StateTransitions are reader methods and
shouldn't have inadvertent side effects on state.

It is safe to remove the check in 'from' because account existence is
implicitly checked by the nonce and balance checks. If the account has
non-zero balance or nonce, it must exist. Even if the sender account has
nonce zero at the start of the state transition or no balance, the nonce
is incremented before execution and the account will be created at that
time.

It is safe to remove the check in 'to' because the EVM creates the
account if necessary.

Fixes #15119
2018-04-10 15:33:25 +02:00
..
asm core/asm: fixed typo (posititon -> position) (#16366) 2018-03-26 13:48:39 +03:00
bloombits core/bloombits: handle non 8-bit boundary section matches 2017-11-15 14:10:35 +02:00
state Merge pull request #15225 from holiman/test_removefrom_dirtyset 2018-04-10 12:28:30 +03:00
types core/types: remove String methods from struct types (#16205) 2018-04-05 14:13:02 +02:00
vm common: delete StringToAddress, StringToHash (#16436) 2018-04-10 14:12:07 +03:00
.gitignore Renamed chain => core 2014-12-04 10:28:02 +01:00
bench_test.go core, trie: intermediate mempool between trie and database (#15857) 2018-02-05 17:40:32 +01:00
block_validator_test.go core, trie: intermediate mempool between trie and database (#15857) 2018-02-05 17:40:32 +01:00
block_validator.go core, trie: intermediate mempool between trie and database (#15857) 2018-02-05 17:40:32 +01:00
blockchain_test.go core: add blockchain benchmarks 2018-04-10 11:20:06 +02:00
blockchain.go core: check transaction/receipt count match when reconstructing blocks (#16272) 2018-03-07 12:05:14 +02:00
blocks.go core: typos and comments improve 2017-05-25 17:14:33 +03:00
chain_indexer_test.go core, eth, les: fix messy code (#15367) 2017-10-25 12:18:44 +03:00
chain_indexer.go core, trie: intermediate mempool between trie and database (#15857) 2018-02-05 17:40:32 +01:00
chain_makers_test.go core, trie: intermediate mempool between trie and database (#15857) 2018-02-05 17:40:32 +01:00
chain_makers.go Merge pull request #15990 from markya0616/sim_backend_block_hash 2018-03-19 08:29:54 +01:00
dao_test.go core, trie: intermediate mempool between trie and database (#15857) 2018-02-05 17:40:32 +01:00
database_util_test.go core/types: remove String methods from struct types (#16205) 2018-04-05 14:13:02 +02:00
database_util.go eth/downloader: save and load trie sync progress (#16224) 2018-03-03 00:52:39 +01:00
error.go core: make txpool operate on immutable state 2017-09-05 13:34:41 +03:00
events.go core: remove unused events 2017-06-23 10:39:38 +08:00
evm.go core: minor evm polishes and optimizations 2018-03-26 12:28:46 +03:00
gaspool.go miner: avoid unnecessary work (#15883) 2018-01-15 12:57:06 +02:00
gen_genesis_account.go all: regenerate codecs with gencodec commit 90983d99de (#15830) 2018-01-08 15:13:22 +02:00
gen_genesis.go all: regenerate codecs with gencodec commit 90983d99de (#15830) 2018-01-08 15:13:22 +02:00
genesis_alloc.go all: use gometalinter.v2, fix new gosimple issues (#15650) 2017-12-12 19:05:47 +01:00
genesis_test.go core: flush out trie cache more meaningfully on stop (#16143) 2018-02-23 14:02:33 +02:00
genesis.go core, trie: intermediate mempool between trie and database (#15857) 2018-02-05 17:40:32 +01:00
headerchain.go core: minor evm polishes and optimizations 2018-03-26 12:28:46 +03:00
helper_test.go core: typos and comments improve 2017-05-25 17:14:33 +03:00
mkalloc.go core: refactor genesis handling 2017-03-23 15:58:43 +01:00
state_processor.go all: switch gas limits from big.Int to uint64 2018-01-03 14:45:35 +02:00
state_transition.go core: remove stray account creations in state transition (#16470) 2018-04-10 15:33:25 +02:00
tx_journal.go core, swarm: typo fixes 2017-10-30 01:23:23 +01:00
tx_list_test.go all: switch gas limits from big.Int to uint64 2018-01-03 14:45:35 +02:00
tx_list.go all: switch gas limits from big.Int to uint64 2018-01-03 14:45:35 +02:00
tx_pool_test.go core: update txpool tests for the removal fix 2018-03-07 10:58:11 +02:00
tx_pool.go core: update txpool tests for the removal fix 2018-03-07 10:58:11 +02:00
types.go all: switch gas limits from big.Int to uint64 2018-01-03 14:45:35 +02:00