core/txpool/blobpool: revert #29989, WLock on Nonce (#30142)

pull/30148/head
Marius van der Wijden 4 months ago committed by GitHub
parent 37590b2c55
commit 803dc6b664
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 5
      core/txpool/blobpool/blobpool.go

@ -1598,8 +1598,9 @@ func (p *BlobPool) SubscribeTransactions(ch chan<- core.NewTxsEvent, reorgs bool
// Nonce returns the next nonce of an account, with all transactions executable // Nonce returns the next nonce of an account, with all transactions executable
// by the pool already applied on top. // by the pool already applied on top.
func (p *BlobPool) Nonce(addr common.Address) uint64 { func (p *BlobPool) Nonce(addr common.Address) uint64 {
p.lock.RLock() // We need a write lock here, since state.GetNonce might write the cache.
defer p.lock.RUnlock() p.lock.Lock()
defer p.lock.Unlock()
if txs, ok := p.index[addr]; ok { if txs, ok := p.index[addr]; ok {
return txs[len(txs)-1].nonce + 1 return txs[len(txs)-1].nonce + 1

Loading…
Cancel
Save