Skip to content

Commit

Permalink
core/txpool: fix minor flaw in isGapped check (ethereum#27404)
Browse files Browse the repository at this point in the history
This fix a minor implementation issue with the newly introduced isGapped function and it is described in ticket: ethereum#27401
  • Loading branch information
dkatzan authored and devopsbo3 committed Nov 10, 2023
1 parent df5a104 commit 210e688
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions core/txpool/txpool.go
Original file line number Diff line number Diff line change
Expand Up @@ -823,10 +823,12 @@ func (pool *TxPool) add(tx *types.Transaction, local bool) (replaced bool, err e

// isGapped reports whether the given transaction is immediately executable.
func (pool *TxPool) isGapped(from common.Address, tx *types.Transaction) bool {
// Short circuit if transaction matches pending nonce and can be promoted
// to pending list as an executable transaction.
// Short circuit if transaction falls within the scope of the pending list
// or matches the next pending nonce which can be promoted as an executable
// transaction afterwards. Note, the tx staleness is already checked in
// 'validateTx' function previously.
next := pool.pendingNonces.get(from)
if tx.Nonce() == next {
if tx.Nonce() <= next {
return false
}
// The transaction has a nonce gap with pending list, it's only considered
Expand Down

0 comments on commit 210e688

Please sign in to comment.