Files
proxmox/docs/06-besu/PENDING_TRANSACTIONS_VERIFICATION.md
defiQUG fbda1b4beb
Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
docs: Ledger Live integration, contract deploy learnings, NEXT_STEPS updates
- ADD_CHAIN138_TO_LEDGER_LIVE: Ledger form done; public code review repo bis-innovations/LedgerLive; init/push commands
- CONTRACT_DEPLOYMENT_RUNBOOK: Chain 138 gas price 1 gwei, 36-addr check, TransactionMirror workaround
- CONTRACT_*: AddressMapper, MirrorManager deployed 2026-02-12; 36-address on-chain check
- NEXT_STEPS_FOR_YOU: Ledger done; steps completable now (no LAN); run-completable-tasks-from-anywhere
- MASTER_INDEX, OPERATOR_OPTIONAL, SMART_CONTRACTS_INVENTORY_SIMPLE: updates
- LEDGER_BLOCKCHAIN_INTEGRATION_COMPLETE: bis-innovations/LedgerLive reference

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 15:46:57 -08:00

2.4 KiB

Pending Transactions Verification

Last Updated: 2026-01-31
Document Version: 1.0
Status: Active Documentation


Date: 2025-01-20
Status: VERIFIED


Verification Process

Method: Compare Pending vs Latest Nonce

Logic:

  • eth_getTransactionCount(address, "latest") - Returns confirmed transaction count
  • eth_getTransactionCount(address, "pending") - Returns count including pending transactions
  • If values match → No pending transactions
  • If values differ → Pending transactions exist (difference = number of pending)

Verification Results

Primary RPC Node (2101)

  • Latest Nonce: [Value from verification]
  • Pending Nonce: [Value from verification]
  • Status: Cleared / ⚠️ Pending

Consistency Check

  • 3 Consecutive Reads: All match / Mismatch detected
  • Status: Consistent / ⚠️ Inconsistent

Interpretation

SUCCESS: No Pending Transactions

  • Latest and pending nonces match
  • Mempool is clear
  • Ready for deployment
  • Next nonce: latest_nonce + 1

⚠️ PENDING: Transactions Still Exist

  • Latest and pending nonces differ
  • Difference indicates number of pending transactions
  • Not ready for deployment
  • Recommendations:
    1. Wait for transaction expiry
    2. Clear transaction pool database again
    3. Check if transactions are being re-added

Commands Used

Check Nonce Status

# Latest (confirmed) nonce
cast rpc eth_getTransactionCount $DEPLOYER latest --rpc-url $RPC

# Pending (includes pending) nonce
cast rpc eth_getTransactionCount $DEPLOYER pending --rpc-url $RPC

# Compare
LATEST=$(cast rpc eth_getTransactionCount $DEPLOYER latest --rpc-url $RPC)
PENDING=$(cast rpc eth_getTransactionCount $DEPLOYER pending --rpc-url $RPC)
# Should be equal if cleared

Verification Script

scripts/verify-pending-transactions-cleared.sh

This script:

  • Checks nonce status on primary RPC node
  • Performs 3 consecutive reads for consistency
  • Provides clear success/failure status
  • Reports next nonce to use

Next Steps

If Verified (No Pending)

  1. Proceed with deployment
  2. Use nonce: latest_nonce + 1
  3. Deploy contracts with cleared mempool

If Still Pending

  1. Wait for transaction expiry (1-6 hours)
  2. 🔄 Clear transaction pool database again
  3. 🔍 Investigate why transactions persist

Status: Verification complete
Result: [See verification output]