Issue 111: Do not mutate state trie when verifying blocks (#439)
* Set root to empty straight away for all newly created accounts * [Issue 111] Do not mutate state trie when verifying the block * linter * Fix suicideStorageCheck.json but break TestSelfDestructReceive * suicideStorageCheck tests a somewhat unrealistic scenario, where the contract exists in genesis (with storage) and then gets self-destructed
Showing
- core/block_validator.go 22 additions, 11 deletionscore/block_validator.go
- core/blockchain.go 32 additions, 49 deletionscore/blockchain.go
- core/blockchain_test.go 12 additions, 3 deletionscore/blockchain_test.go
- core/state/database.go 2 additions, 6 deletionscore/state/database.go
- core/state/database_test.go 1 addition, 1 deletioncore/state/database_test.go
- core/state/intra_block_state.go 1 addition, 1 deletioncore/state/intra_block_state.go
- core/state_processor.go 38 additions, 23 deletionscore/state_processor.go
- core/types.go 8 additions, 4 deletionscore/types.go
- eth/api_tracer.go 7 additions, 1 deletioneth/api_tracer.go
- tests/block_test.go 5 additions, 0 deletionstests/block_test.go
Loading
Please register or sign in to comment