From 6d692cef57e1c41451d2892bc7462d91b97f0b08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Kr=C3=BCger?= Date: Fri, 5 Jun 2026 22:52:35 +0200 Subject: [PATCH] fix: limit yq Go thread usage on hosts with low ulimit -u IONOS shared hosting enforces a strict process limit. yq (a Go binary) tries to spawn several OS threads at startup and crashes with "failed to create new OS thread (errno=11 EAGAIN)" when the limit is hit, returning empty stdout. This silently skips all references. Wrap yq with GOMAXPROCS=1 GOGC=off so the Go runtime uses a single goroutine-running thread and skips GC goroutines, staying within the host's ulimit -u. Co-Authored-By: Claude Sonnet 4.6 --- scripts/arty.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/scripts/arty.sh b/scripts/arty.sh index c2f62616..579e2342 100755 --- a/scripts/arty.sh +++ b/scripts/arty.sh @@ -163,6 +163,11 @@ load_env_vars() { fi } +# Wrapper to limit Go thread usage on hosts with low ulimit -u (e.g. IONOS shared hosting) +yq() { + GOMAXPROCS=1 GOGC=off command yq "$@" +} + # Check if yq is installed check_yq() { if ! command -v yq &>/dev/null; then