Files
proxmox/docs/06-besu/STUCK_TRANSACTIONS_SOLUTION_COMPLETE.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

5.2 KiB

Stuck Transactions Solution - Complete

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


Date: 2026-01-21
Status: SOLUTION COMPLETE


Summary

The solution for stuck transactions has been completed. All required contracts are deployed and ready to use.


Problem Solved

Original Issue

  • 9 stuck transactions (nonces 13105-13113)
  • Transactions NOT in blockchain
  • Transactions NOT in transaction pool
  • RPC reporting them as pending

Root Cause

  • Transactions persisted in RPC's internal state/database
  • Previous deployment attempts failed (connection timeout, "Known transaction")
  • Nonce advanced but transactions never confirmed

Solution Implemented

  • Transaction pools cleared on all nodes
  • RPC database cleared
  • Next nonce identified: 13113
  • Deployment script created with next nonce support
  • Contracts verified as deployed

Current Status

Contracts Deployed

Contract Address Status
CCIPWETH9Bridge 0x89dd12025bfCD38A168455A44B400e913ED33BE2 Deployed
CCIPWETH10Bridge 0xe0E93247376aa097dB308B92e6Ba36bA015535D0 Deployed

Nonce Status

  • Latest Nonce (confirmed): 13104
  • Pending Nonce (RPC reports): 13113
  • Next Nonce to Use: 13113
  • Stuck Transactions: 9 (nonces 13105-13112) - will be skipped

Solution Tools Created

1. scripts/skip-stuck-transactions.sh

Shows next nonce to use for skipping stuck transactions.

Usage:

bash scripts/skip-stuck-transactions.sh

Output: Next nonce (13113) and example commands

2. scripts/deploy-with-next-nonce.sh

Deploys contracts using next nonce with explicit gas prices.

Usage:

cd smom-dbis-138
bash ../scripts/deploy-with-next-nonce.sh

Features:

  • Gets next nonce automatically
  • Uses explicit gas price (10 gwei default)
  • Checks if contracts already deployed
  • Deploys only missing contracts
  • Verifies deployments

3. scripts/investigate-transaction-persistence.sh

Investigates why transactions persist.

Usage:

bash scripts/investigate-transaction-persistence.sh

Output: Analysis of transaction state (blockchain vs txpool vs RPC)


Deployment Verification

Bridges Already Deployed

Both bridges are already deployed and verified:

# WETH9 Bridge
cast code 0x89dd12025bfCD38A168455A44B400e913ED33BE2 --rpc-url http://192.168.11.211:8545
# ✅ Has code (deployed)

# WETH10 Bridge  
cast code 0xe0E93247376aa097dB308B92e6Ba36bA015535D0 --rpc-url http://192.168.11.211:8545
# ✅ Has code (deployed)

Stuck Transactions

The stuck transactions (nonces 13105-13113) were likely from:

  • Previous failed deployment attempts
  • Connection timeout errors
  • "Known transaction" errors

Resolution: These transactions are NOT in blockchain and will be automatically skipped when using nonce 13113.


For Future Deployments

Best Practices

  1. Always Use Explicit Gas Prices

    cast send ... --gas-price 10000000000  # 10 gwei
    
  2. Use Next Nonce if Stuck

    # Get next nonce
    NEXT_NONCE=$(bash scripts/skip-stuck-transactions.sh | grep "Next nonce" | awk '{print $NF}')
    
    # Use it
    cast send ... --nonce $NEXT_NONCE --gas-price 10000000000
    
  3. Monitor Transaction Status

    # Check if confirmed
    cast receipt <tx_hash> --rpc-url http://192.168.11.211:8545
    
    # Monitor health
    bash scripts/monitoring/monitor-blockchain-health.sh
    

Deployment Script

For deploying new contracts:

cd smom-dbis-138
bash ../scripts/deploy-with-next-nonce.sh

This script:

  • Gets next nonce automatically
  • Uses explicit gas price (10 gwei)
  • Checks existing deployments
  • Deploys only missing contracts
  • Verifies deployments

Resolution Summary

Item Status Details
Stuck transactions Resolved Use nonce 13113 to skip
Transaction pools Cleared All nodes cleared
RPC database Cleared Complete database cleared
Bridges deployed Verified Both bridges deployed
Deployment tools Created Scripts ready for use
Documentation Complete All guides created

Quick Reference

Get Next Nonce

bash scripts/skip-stuck-transactions.sh

Deploy Contracts

cd smom-dbis-138
bash ../scripts/deploy-with-next-nonce.sh

Check Bridge Status

RPC="http://192.168.11.211:8545"
cast code 0x89dd12025bfCD38A168455A44B400e913ED33BE2 --rpc-url "$RPC"
cast code 0xe0E93247376aa097dB308B92e6Ba36bA015535D0 --rpc-url "$RPC"

Monitor Health

bash scripts/monitoring/monitor-blockchain-health.sh

Conclusion

Solution Complete:

  1. Stuck transactions identified and solution provided
  2. Next nonce determined (13113)
  3. Deployment tools created
  4. Bridges verified as deployed
  5. Documentation complete

Status: All contracts deployed. Blockchain ready for use. Use nonce 13113 for any new deployments to skip stuck transactions.


Solution for stuck transactions is complete. All contracts deployed and ready.