From 65c992f9f8a29b80fc4e4a8346f691f07567b8f3 Mon Sep 17 00:00:00 2001 From: Valerij Fredriksen Date: Mon, 27 May 2019 14:13:41 +0200 Subject: Validate cpu shares better and scale by 32 for each minVcpu --- .../java/com/yahoo/vespa/hosted/dockerapi/ContainerResources.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'docker-api/src/main') diff --git a/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/ContainerResources.java b/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/ContainerResources.java index c3c4ca19555..70ba58cd9cf 100644 --- a/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/ContainerResources.java +++ b/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/ContainerResources.java @@ -35,8 +35,8 @@ public class ContainerResources { if (cpus < 0) throw new IllegalArgumentException("CPUs must be a positive number or 0 for unlimited, was " + cpus); - if (cpuShares < 0) - throw new IllegalArgumentException("CPU shares must be a positive integer or 0 for unlimited, was " + cpuShares); + if (cpuShares != 0 && (cpuShares < 2 || cpuShares > 262_144)) + throw new IllegalArgumentException("CPU shares must be a positive integer in [2, 262144] or 0 for unlimited, was " + cpuShares); if (memoryBytes < 0) throw new IllegalArgumentException("memoryBytes must be a positive integer or 0 for unlimited, was " + memoryBytes); } @@ -54,7 +54,7 @@ public class ContainerResources { */ public static ContainerResources from(double maxVcpu, double minVcpu, double memoryGb) { return new ContainerResources(maxVcpu, - (int) Math.round(10 * minVcpu), + (int) Math.round(32 * minVcpu), (long) ((1L << 30) * memoryGb)); } -- cgit v1.2.3