automatically set GOMEMLIMIT env variable

Signed-off-by: Pascal Sthamer <pascal+github@sthamer.xyz>
This commit is contained in:
Pascal Sthamer
2026-04-07 13:00:49 +02:00
parent 1279bb0949
commit d07ef7376a
8 changed files with 104 additions and 9 deletions
@@ -520,6 +520,12 @@ backend:
##
debug: false
## @param backend.autoGOMEMLIMIT Automatically set GOMEMLIMIT environment variable to 90% of the container memory limit.
## This helps prevent Go runtime memory limits from exceeding container limits, which can cause OOM kills.
## Only effective when backend.resources.limits.memory is set or a resourcesPreset is used that defines memory limits.
##
autoGOMEMLIMIT: true
## @param backend.cleanupSchedule The interval in seconds at which the cleanup job runs
##
cleanupSchedule: 300
@@ -1337,6 +1343,13 @@ orborus:
##
debug: false
## @param orborus.autoGOMEMLIMIT Automatically set GOMEMLIMIT environment variable to 90% of the container memory limit.
## This helps prevent Go runtime memory limits from exceeding container limits, which can cause OOM kills.
## Only effective when orborus.resources.limits.memory is set or a resourcesPreset is used that defines memory limits.
## Only effective when orborus is deployed via helm.
##
autoGOMEMLIMIT: true
## @param orborus.executionConcurrency The maximum amount of concurrent workflow executions per worker
##
executionConcurrency: 25
@@ -1751,6 +1764,13 @@ worker:
##
debug: false
## @param worker.autoGOMEMLIMIT Automatically set GOMEMLIMIT environment variable to 90% of the container memory limit.
## This helps prevent Go runtime memory limits from exceeding container limits, which can cause OOM kills.
## Only effective when worker.resources.limits.memory is set or a resourcesPreset is used that defines memory limits.
## Only effective when worker is deployed via helm (see worker.enableHelmDeployment).
##
autoGOMEMLIMIT: true
## @param worker.manageAppDeployments Whether apps are deployed and managed by worker. When disabled, every used app is expected to to be already deployed (see apps.enabled).
## This effectively removes required RBAC permissions from the shuffle-worker service account to create deployments and services.
## The worker might still attempt to create kubernetes objects, resulting in an error. There is currently no way to tell the worker, that it should not manage k8s resources.