diff options
author | Jeffrey Wilcke <geffobscura@gmail.com> | 2015-07-01 18:07:14 +0800 |
---|---|---|
committer | Jeffrey Wilcke <geffobscura@gmail.com> | 2015-07-04 08:51:36 +0800 |
commit | ab16ce70fc68d9ab1b7d8cda57c180b4785cab6a (patch) | |
tree | b6d294b8fbe8ba7f34a9f78f676ca99758a58bf5 /core/block_processor.go | |
parent | 08caeedd842526373d30a929e63101a5fe7fda55 (diff) | |
download | go-tangerine-ab16ce70fc68d9ab1b7d8cda57c180b4785cab6a.tar go-tangerine-ab16ce70fc68d9ab1b7d8cda57c180b4785cab6a.tar.gz go-tangerine-ab16ce70fc68d9ab1b7d8cda57c180b4785cab6a.tar.bz2 go-tangerine-ab16ce70fc68d9ab1b7d8cda57c180b4785cab6a.tar.lz go-tangerine-ab16ce70fc68d9ab1b7d8cda57c180b4785cab6a.tar.xz go-tangerine-ab16ce70fc68d9ab1b7d8cda57c180b4785cab6a.tar.zst go-tangerine-ab16ce70fc68d9ab1b7d8cda57c180b4785cab6a.zip |
core, miner, tests: renamed state methods
* Update => SyncIntermediate
* Added SyncObjects
SyncIntermediate only updates whatever has changed, but, as a side
effect, requires much more disk space.
SyncObjects will only sync whatever is required for a block and will not
save intermediate state to disk. As drawback this requires more time
when more txs come in.
Diffstat (limited to 'core/block_processor.go')
-rw-r--r-- | core/block_processor.go | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/core/block_processor.go b/core/block_processor.go index 5f745e491..e7ad059c3 100644 --- a/core/block_processor.go +++ b/core/block_processor.go @@ -77,7 +77,7 @@ func (self *BlockProcessor) ApplyTransaction(coinbase *state.StateObject, stated } // Update the state with pending changes - statedb.Update() + statedb.SyncIntermediate() usedGas.Add(usedGas, gas) receipt := types.NewReceipt(statedb.Root().Bytes(), usedGas) @@ -243,7 +243,7 @@ func (sm *BlockProcessor) processWithParent(block, parent *types.Block) (logs st // Commit state objects/accounts to a temporary trie (does not save) // used to calculate the state root. - state.CleanUpdate() + state.SyncObjects() if header.Root != state.Root() { err = fmt.Errorf("invalid merkle root. received=%x got=%x", header.Root, state.Root()) return |