node icon indicating copy to clipboard operation
node copied to clipboard

zEVM TXs with Gas higher than Max Limit get stuck in pending for days defore dropping

Open julianrubino opened this issue 8 months ago • 0 comments

When a ZEVM transaction is submitted with a gas value higher than the network's maximum transaction gas limit (25,000,000), the transaction is not immediately rejected. Instead, it remains stuck in Pending status for days before it is automatically dropped.

  • The wallet becomes unusable because the sequence number (nonce) is stuck behind the pending transaction.
  • All subsequent transactions also stay pending until the over-limit transaction is eventually dropped.
  • Users essentially experience a total wallet lock for several days, unable to perform any actions.

Replication Steps:

  1. Use a disposable wallet on ZEVM.
  2. Send a transaction manually setting gas > 25,000,000.
  3. Observe that the transaction remains pending indefinitely.
  4. Sequence is blocked for all subsequent transactions.

Impact:

  • Wallets get locked for multiple days.
  • May lead users to believe the network or their wallet is broken.

Request / Questions:

  1. Is it possible for our nodes to immediately drop transactions that exceed the maximum allowed gas?
  2. If not, could there be an early rejection mechanism at the mempool or RPC layer?
  3. Should we implement client-side checks to avoid submitting such transactions?

julianrubino avatar Apr 28 '25 17:04 julianrubino