Files
proxmox/reports/status/VMID2400_BESU_LOG_ANALYSIS.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.5 KiB

VMID 2400 Besu Log Analysis - Failed Transactions

Date: 2026-01-27
VMID: 2400
Service: besu-rpc.service
Node: ThirdWeb RPC Node


Summary

No explicit transaction failures found in the Besu logs. However, several operational issues were identified:

  1. Transaction Execution: No transaction execution failures or revert errors detected
  2. ⚠️ Block Import Errors: Invalid block import error (block #580129) - resolved
  3. ⚠️ Thread Blocking: Multiple Vertx thread blocking warnings (performance issue)

Findings

1. Block Import Error (Historical)

Date: 2026-01-03 16:41:08
Error Type: InvalidBlockException
Block: #580129 (0x2aaa4f4809549c5365fa8f1f4944d8c25548027d3680bead3fb726ea6fa7ec55)

ERROR | BlockPropagationManager | Error importing pending blocks
org.hyperledger.besu.ethereum.eth.sync.tasks.exceptions.InvalidBlockException: 
Failed to import block: Invalid block at #580129

Invalid block 580129: Optional[Parent block with hash 
0xba5eb16a1cdde02e94955d8bee110760904f8ace38d6e0736d6853043d2cc848 not present]

Analysis:

  • This is a block import error, not a transaction failure
  • The block was rejected because its parent block was not present in the chain
  • This is a normal occurrence during blockchain synchronization
  • The error resolved itself as the chain caught up
  • No impact on transaction processing

2. Thread Blocking Warnings (Performance)

Recent Occurrences:

  • 2026-01-04 11:21:23: Thread blocked for 2243 ms (exceeded 2000 ms limit)
  • 2026-01-04 11:35:30: Thread blocked for 5541 ms (exceeded 2000 ms limit)
  • 2026-01-04 11:35:30: Thread blocked for 4812 ms (exceeded 2000 ms limit)
  • 2026-01-03 16:41:06: Thread blocked for 2887 ms (exceeded 2000 ms limit)
  • 2026-01-04 03:34:24: Thread blocked for 2275 ms (exceeded 2000 ms limit)

Analysis:

  • Vertx event loop threads are being blocked
  • This is a performance warning, not a transaction failure
  • Common causes:
    • Database compaction operations
    • Large block imports
    • Garbage collection cycles
    • High RPC load
  • Impact: May cause temporary RPC response delays, but does not cause transaction failures

3. Transaction Status

Blocks with Transactions (from recent logs):

  • Block #600,135: 1 transaction (152,064 gas, 0.5% utilization)
  • Block #600,158: 1 transaction (152,064 gas, 0.5% utilization)
  • Block #600,170: 1 transaction (152,064 gas, 0.5% utilization)
  • Block #600,111: 1 transaction (152,064 gas, 0.5% utilization)
  • Block #600,078: 1 transaction (152,064 gas, 0.5% utilization)

Analysis:

  • Transactions are being included in blocks successfully
  • No transaction execution failures logged
  • No revert errors detected
  • Gas usage is normal (152,064 gas per transaction)

Transaction Pool Status

Method Checked: txpool_status
Result: Method not available (expected - this is an RPC-only node)

Note: VMID 2400 is an RPC node and may not expose transaction pool methods. To check pending transactions, query the transaction pool on a validator node or use eth_getTransactionReceipt to check transaction status.


Recommendations

1. Monitor Thread Blocking

If thread blocking warnings become more frequent:

  • Monitor system resources (CPU, memory, disk I/O)
  • Consider increasing JVM heap size
  • Optimize garbage collection settings
  • Review database compaction settings

2. Check Transaction Receipts

To verify if transactions are actually failing, check transaction receipts:

# Check a specific transaction receipt
curl -X POST http://127.0.0.1:8545 \
  -H 'Content-Type: application/json' \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getTransactionReceipt",
    "params": ["0x<transaction_hash>"],
    "id": 1
  }'

A failed transaction will have:

  • status: "0x0" (failed)
  • status: "0x1" (success)

3. Monitor Block Import

The block import error was historical and resolved. Monitor for:

  • Frequent invalid block errors
  • Blocks not being imported
  • Chain synchronization issues

Conclusion

No transaction failures detected in the Besu logs for VMID 2400.

The errors found are:

  1. Historical block import error (resolved)
  2. Thread blocking warnings (performance issue, not transaction failures)

Next Steps:

  • If you have a specific transaction hash that failed, check its receipt status
  • Monitor thread blocking warnings if they become more frequent
  • Check transaction receipts directly via RPC to verify transaction execution status

Last Updated: 2026-01-27