Skip to content

Commit

Permalink
try removing byzantine prefetecher to solve goroutine leak
Browse files Browse the repository at this point in the history
  • Loading branch information
lucca30 committed Feb 14, 2025
1 parent 5687bba commit 7cb7653
Showing 1 changed file with 16 additions and 16 deletions.
32 changes: 16 additions & 16 deletions core/blockchain.go
Original file line number Diff line number Diff line change
Expand Up @@ -2340,22 +2340,22 @@ func (bc *BlockChain) insertChain(chain types.Blocks, setHead bool, makeWitness
}
statedb.SetLogger(bc.logger)

// If we are past Byzantium, enable prefetching to pull in trie node paths
// while processing transactions. Before Byzantium the prefetcher is mostly
// useless due to the intermediate root hashing after each transaction.
if bc.chainConfig.IsByzantium(block.Number()) {
// Generate witnesses either if we're self-testing, or if it's the
// only block being inserted. A bit crude, but witnesses are huge,
// so we refuse to make an entire chain of them.
if bc.vmConfig.StatelessSelfValidation || (makeWitness && len(chain) == 1) {
witness, err = stateless.NewWitness(block.Header(), bc)
if err != nil {
return nil, it.index, err
}
}
statedb.StartPrefetcher("chain", witness)
}
activeState = statedb
// // If we are past Byzantium, enable prefetching to pull in trie node paths
// // while processing transactions. Before Byzantium the prefetcher is mostly
// // useless due to the intermediate root hashing after each transaction.
// if bc.chainConfig.IsByzantium(block.Number()) {
// // Generate witnesses either if we're self-testing, or if it's the
// // only block being inserted. A bit crude, but witnesses are huge,
// // so we refuse to make an entire chain of them.
// if bc.vmConfig.StatelessSelfValidation || (makeWitness && len(chain) == 1) {
// witness, err = stateless.NewWitness(block.Header(), bc)
// if err != nil {
// return nil, it.index, err
// }
// }
// statedb.StartPrefetcher("chain", witness)
// }
// activeState = statedb

// If we have a followup block, run that against the current state to pre-cache
// transactions and probabilistically some of the account/storage trie nodes.
Expand Down

0 comments on commit 7cb7653

Please sign in to comment.