From f2b1ad13a89de81e0ddfd8197c93a36d0acf44c4 Mon Sep 17 00:00:00 2001 From: qu0b Date: Thu, 19 Feb 2026 03:43:47 +0000 Subject: [PATCH] devnet-2: add besu RPC connection limit and timeout MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 --- ansible/inventories/devnet-2/group_vars/besu.yaml | 2 ++ .../devnet-2/host_vars/hc-lighthouse-besu-super-1.yaml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/ansible/inventories/devnet-2/group_vars/besu.yaml b/ansible/inventories/devnet-2/group_vars/besu.yaml index a68551c..7d66e79 100644 --- a/ansible/inventories/devnet-2/group_vars/besu.yaml +++ b/ansible/inventories/devnet-2/group_vars/besu.yaml @@ -37,6 +37,8 @@ besu_container_command_extra_args: - --bonsai-historical-block-limit=100000000 - --bootnodes={{ ethereum_el_bootnodes | join(',') }} - --target-gas-limit=80000000 + - --rpc-http-max-active-connections=20 + - --Xhttp-timeout-seconds=600 besu_container_pull: true prometheus_config: | diff --git a/ansible/inventories/devnet-2/host_vars/hc-lighthouse-besu-super-1.yaml b/ansible/inventories/devnet-2/host_vars/hc-lighthouse-besu-super-1.yaml index c76e036..b455186 100644 --- a/ansible/inventories/devnet-2/host_vars/hc-lighthouse-besu-super-1.yaml +++ b/ansible/inventories/devnet-2/host_vars/hc-lighthouse-besu-super-1.yaml @@ -10,6 +10,8 @@ besu_container_command_extra_args: - --bonsai-historical-block-limit=100000000 - --bootnodes={{ ethereum_el_bootnodes | join(',') }} - --target-gas-limit=80000000 + - --rpc-http-max-active-connections=20 + - --Xhttp-timeout-seconds=600 - --Xbal-prefetch-reading-enabled=true - --Xbal-trust-state-root=true - --Xbal-perfect-parallelization-enabled=true