From ee4d71362d092943da3d38bbff5956d785c6b758 Mon Sep 17 00:00:00 2001 From: Valery Kharseko <vharseko@3a-systems.ru> Date: Thu, 01 Oct 2026 13:42:47 +0000 Subject: [PATCH] [#1144] Widen the ephemeral port range before the benchmark runs (#1145) --- .github/benchmark/compare-opendj.sh | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-) diff --git a/.github/benchmark/compare-opendj.sh b/.github/benchmark/compare-opendj.sh index e8321f1..cadb47f 100644 --- a/.github/benchmark/compare-opendj.sh +++ b/.github/benchmark/compare-opendj.sh @@ -50,6 +50,14 @@ tar -xzf /tmp/jmeter.tgz -C "$HOME/jmeter" fi +# ---------------------------------------------------------------- ephemeral ports +# BIND opens a new connection per iteration (~500/s), and docker-proxy relays each one to the +# container over a second connection from an ephemeral port. With the default range +# (32768-60999) and 60 s of TIME_WAIT that leg runs out of ports within a minute, and BIND then +# fails with "LDAP connection has been closed". Widen the range and let connect() reuse +# TIME_WAIT ports. +sudo sysctl -w net.ipv4.ip_local_port_range="1024 65535" net.ipv4.tcp_tw_reuse=1 + # Poll OpenDJ readiness on localhost:1389. An image with a HEALTHCHECK has to report healthy # first: on a first start the server the bootstrap started answers, then is stopped and # started again, and a request sent in between fails. An older image's health check -- Gitblit v1.10.0