summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHÃ¥kon Hallingstad <hakon@verizonmedia.com>2021-10-29 12:05:21 +0200
committerGitHub <noreply@github.com>2021-10-29 12:05:21 +0200
commit9d1a6fcc97c137c9a8786cfbabb1d2c85e7cf03a (patch)
tree47952e2de2501006979ea625c8432295e333ca05
parent1299868a881e1a3ba06625c0ec5b2726ed26276b (diff)
parent908892dc67f0537839026de3d06de1ffd506abbf (diff)
Merge pull request #19788 from vespa-engine/freva/cgroup-v2
Check with vespa_cg2get if no value from cgget
-rwxr-xr-xcontainer-disc/src/main/sh/vespa-start-container-daemon.sh8
1 files changed, 8 insertions, 0 deletions
diff --git a/container-disc/src/main/sh/vespa-start-container-daemon.sh b/container-disc/src/main/sh/vespa-start-container-daemon.sh
index da7e270890d..8c122d3170e 100755
--- a/container-disc/src/main/sh/vespa-start-container-daemon.sh
+++ b/container-disc/src/main/sh/vespa-start-container-daemon.sh
@@ -128,7 +128,15 @@ configure_memory() {
if ((jvm_heapSizeAsPercentageOfPhysicalMemory > 0)); then
available=`free -m | grep Mem | tr -s ' ' | cut -f2 -d' '`
if hash cgget 2>/dev/null; then
+ # TODO: Create vespa_cgget for this and remove dependency on libcgroup-tools
available_cgroup_bytes=$(cgget -nv -r memory.limit_in_bytes /)
+ if [ $? -ne 0 ]; then
+ available_cgroup_bytes=$(vespa_cg2get memory.max)
+ # If command failed or returned value is 'max' assign a big value (default in CGroup v1)
+ if ! [[ "$available_cgroup_bytes" =~ ^[0-9]+$ ]]; then
+ available_cgroup_bytes=$(((1 << 63) -1))
+ fi
+ fi
available_cgroup=$((available_cgroup_bytes >> 20))
available=$((available > available_cgroup ? available_cgroup : available))
fi