Skip to content

Comments

devnet-2: add besu RPC connection limit and timeout#32

Open
qu0b wants to merge 1 commit intomasterfrom
qu0b/besu-rpc-limits
Open

devnet-2: add besu RPC connection limit and timeout#32
qu0b wants to merge 1 commit intomasterfrom
qu0b/besu-rpc-limits

Conversation

@qu0b
Copy link
Member

@qu0b qu0b commented Feb 19, 2026

Summary

  • Add --rpc-http-max-active-connections=20 to prevent OOM from concurrent debug_traceBlockByHash floods
  • Add --Xhttp-timeout-seconds=600 to prevent heavy block traces from being killed mid-flight

Context

tracoor sends concurrent debug_traceBlockByHash requests with full memory/storage tracing enabled (disableMemory: false). Each response is 350-600 MB of JSON. With the default 80-connection limit, enough concurrent traces run simultaneously to exhaust JVM heap, causing OutOfMemoryError on both besu nodes.

Lowering to 20 connections rejects excess requests at the HTTP layer instead of accepting them all and OOMing. Normal RPC traffic (engine API, eth_* calls) is unaffected — engine API runs on port 8551, not the HTTP RPC port.

Already deployed manually to both live besu nodes — stable with zero OOM under continuous tracoor load.

Related: hyperledger/besu#9844 (streaming fix for debug_traceBlock)

🤖 Generated with Claude Code

Limit `--rpc-http-max-active-connections` to 20 (default 80) and
increase `--Xhttp-timeout-seconds` to 600 (default 30) on all besu
nodes.

tracoor floods 250+ concurrent `debug_traceBlockByHash` requests with
full memory/storage tracing enabled. Even with the streaming fix
(PR hyperledger/besu#9844), the default 80-connection limit allows
enough concurrent traces to exhaust JVM heap. Lowering to 20
prevents OOM while still serving normal RPC traffic. The 600s timeout
prevents heavy block traces from being killed mid-flight.

Already deployed manually to both live besu nodes — stable with zero
OOM under continuous tracoor load.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant