Files
proxmox/docs/archive/fixes/QBFT_TRANSACTION_RESOLUTION.md
defiQUG cb47cce074 Complete markdown files cleanup and organization
- Organized 252 files across project
- Root directory: 187 → 2 files (98.9% reduction)
- Moved configuration guides to docs/04-configuration/
- Moved troubleshooting guides to docs/09-troubleshooting/
- Moved quick start guides to docs/01-getting-started/
- Moved reports to reports/ directory
- Archived temporary files
- Generated comprehensive reports and documentation
- Created maintenance scripts and guides

All files organized according to established standards.
2026-01-06 01:46:25 -08:00

4.0 KiB

QBFT Transaction Resolution - Complete Solution

Date: $(date)
Status: TXPOOL AND ADMIN ENABLED - STUCK TRANSACTION IDENTIFIED


🎯 Summary

After enabling TXPOOL and ADMIN RPC methods on the Besu RPC node, we successfully identified the stuck transaction blocking Ethereum Mainnet configuration.


Completed Actions

1. Enabled TXPOOL RPC Methods

  • Script: scripts/enable-txpool-rpc-ssh.sh
  • Result: TXPOOL module enabled on RPC node (192.168.11.250)
  • Methods Available: txpool_besuTransactions (working)

2. Enabled ADMIN RPC Methods

  • Script: scripts/enable-admin-rpc-ssh.sh
  • Result: ADMIN module enabled on RPC node
  • Note: admin_removeTransaction method not available in this Besu version

3. Identified Stuck Transaction

  • Hash: 0x359e4e1501d062e32077ca5cb854c46ef7df4b0233431befad1321c0c7a20670
  • Nonce: 23
  • From: 0x4A666F96fC8764181194447A7dFdb7d471b301C8
  • Gas Price: 20 gwei (20,000,000,000 wei)
  • Status: Stuck in transaction pool

4. Found Additional Stuck Transactions

  • Nonce 24: Gas price 10,000 gwei (extremely high)
  • Nonce 74: Future transaction
  • Total: 7 transactions in pool

🔍 Key Findings

Transaction Pool Analysis

Using txpool_besuTransactions, we found:

  1. 7 transactions in the pool

  2. 3 transactions from deployer address:

    • Nonce 23: 20 gwei (stuck - blocking)
    • Nonce 24: 10,000 gwei (extremely high)
    • Nonce 74: 10 gwei (future transaction)
  3. Current on-chain nonce: 23 (matches stuck transaction)

Besu RPC Methods Available

  • txpool_besuTransactions - Returns all transactions in pool
  • txpool_content - Not available
  • txpool_status - Not available
  • txpool_clear - Not available
  • admin_removeTransaction - Not available in this Besu version

🔧 Resolution Options

Since the stuck transaction has a gas price of 20 gwei, send a replacement with a much higher gas price:

# Use gas price > 10,000 gwei to exceed nonce 24's gas price
cast send <contract> <function> <args> \
  --rpc-url http://192.168.11.250:8545 \
  --private-key $PRIVATE_KEY \
  --gas-price 50000000000000 \  # 50,000 gwei
  --nonce 23 \
  --gas-limit 200000

Note: Besu requires the replacement gas price to be higher than the existing transaction by the tx-pool-price-bump percentage (default 10%).

Option 2: Restart Besu RPC Node

Restarting the RPC node will clear its local mempool, but the transaction may persist in validator nodes:

# On Proxmox host
pct exec 2500 -- systemctl restart besu-rpc

Option 3: Use Different Deployer Account

Create and fund a new account to bypass the stuck nonce:

# Create new account
cast wallet new

# Fund from existing account
cast send <new-address> --value 10ether \
  --rpc-url http://192.168.11.250:8545 \
  --private-key $PRIVATE_KEY

Option 4: Wait for Transaction Retention Period

The transaction pool has a retention period (tx-pool-retention-hours, default 6 hours). After this period, invalid transactions should be removed automatically.


📋 Scripts Created

  1. scripts/enable-txpool-rpc-ssh.sh - Enable TXPOOL via SSH
  2. scripts/enable-admin-rpc-ssh.sh - Enable ADMIN via SSH
  3. scripts/resolve-stuck-transaction-besu-qbft.sh - Comprehensive resolution script
  4. scripts/remove-stuck-transaction-besu.sh - Remove specific transaction

🎯 Next Steps

  1. Try replacement transaction with gas price > 50,000 gwei
  2. If replacement fails, restart all Besu nodes (validators + RPC)
  3. If still stuck, use a different deployer account
  4. Monitor transaction pool using txpool_besuTransactions

📊 Current Status

  • TXPOOL enabled
  • ADMIN enabled
  • Stuck transaction identified (nonce 23)
  • Waiting for replacement transaction or node restart

Last Updated: $(date)
Resolution: IN PROGRESS - REPLACEMENT TRANSACTION PENDING