Skip to content

Commit

Permalink
core/txpool/blobpool: use types.Sender instead of signer.Sender (#30473)
Browse files Browse the repository at this point in the history
Use types.Sender(signer, tx) to utilize the transaction's sender cache
and avoid repeated address recover.
  • Loading branch information
minh-bq authored Sep 30, 2024
1 parent 6b61b54 commit 0a21cb4
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions core/txpool/blobpool/blobpool.go
Original file line number Diff line number Diff line change
Expand Up @@ -478,7 +478,7 @@ func (p *BlobPool) parseTransaction(id uint64, size uint32, blob []byte) error {
log.Error("Rejecting duplicate blob pool entry", "id", id, "hash", tx.Hash())
return errors.New("duplicate blob entry")
}
sender, err := p.signer.Sender(tx)
sender, err := types.Sender(p.signer, tx)
if err != nil {
// This path is impossible unless the signature validity changes across
// restarts. For that ever improbable case, recover gracefully by ignoring
Expand Down Expand Up @@ -892,7 +892,7 @@ func (p *BlobPool) reorg(oldHead, newHead *types.Header) (map[common.Address][]*
// and accumulate the transactors and transactions
for rem.NumberU64() > add.NumberU64() {
for _, tx := range rem.Transactions() {
from, _ := p.signer.Sender(tx)
from, _ := types.Sender(p.signer, tx)

discarded[from] = append(discarded[from], tx)
transactors[from] = struct{}{}
Expand All @@ -904,7 +904,7 @@ func (p *BlobPool) reorg(oldHead, newHead *types.Header) (map[common.Address][]*
}
for add.NumberU64() > rem.NumberU64() {
for _, tx := range add.Transactions() {
from, _ := p.signer.Sender(tx)
from, _ := types.Sender(p.signer, tx)

included[from] = append(included[from], tx)
inclusions[tx.Hash()] = add.NumberU64()
Expand All @@ -917,7 +917,7 @@ func (p *BlobPool) reorg(oldHead, newHead *types.Header) (map[common.Address][]*
}
for rem.Hash() != add.Hash() {
for _, tx := range rem.Transactions() {
from, _ := p.signer.Sender(tx)
from, _ := types.Sender(p.signer, tx)

discarded[from] = append(discarded[from], tx)
transactors[from] = struct{}{}
Expand All @@ -927,7 +927,7 @@ func (p *BlobPool) reorg(oldHead, newHead *types.Header) (map[common.Address][]*
return nil, nil
}
for _, tx := range add.Transactions() {
from, _ := p.signer.Sender(tx)
from, _ := types.Sender(p.signer, tx)

included[from] = append(included[from], tx)
inclusions[tx.Hash()] = add.NumberU64()
Expand Down Expand Up @@ -1127,7 +1127,7 @@ func (p *BlobPool) validateTx(tx *types.Transaction) error {
// If the transaction replaces an existing one, ensure that price bumps are
// adhered to.
var (
from, _ = p.signer.Sender(tx) // already validated above
from, _ = types.Sender(p.signer, tx) // already validated above
next = p.state.GetNonce(from)
)
if uint64(len(p.index[from])) > tx.Nonce()-next {
Expand Down

0 comments on commit 0a21cb4

Please sign in to comment.