diff --git a/core/block_manager.go b/core/block_manager.go
index 1b9da1269263ff30ad34fa8860e7623502ac69f7..8a5455306c942f66b4196f10bbbea0dca9a0587d 100644
--- a/core/block_manager.go
+++ b/core/block_manager.go
@@ -185,12 +185,6 @@ func (sm *BlockManager) ProcessWithParent(block, parent *types.Block) (td *big.I
 
 	state := state.New(parent.Trie().Copy())
 
-	// Defer the Undo on the Trie. If the block processing happened
-	// we don't want to undo but since undo only happens on dirty
-	// nodes this won't happen because Commit would have been called
-	// before that.
-	defer state.Reset()
-
 	// Block validation
 	if err = sm.ValidateBlock(block, parent); err != nil {
 		return