You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aurora.apache.org by wf...@apache.org on 2014/12/03 02:48:41 UTC
incubator-aurora git commit: Prevent Aurora from creating tasks with
0 disk.
Repository: incubator-aurora
Updated Branches:
refs/heads/master f9837dae8 -> 8959b4995
Prevent Aurora from creating tasks with 0 disk.
Bugs closed: AURORA-956
Reviewed at https://reviews.apache.org/r/28621/
Project: http://git-wip-us.apache.org/repos/asf/incubator-aurora/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-aurora/commit/8959b499
Tree: http://git-wip-us.apache.org/repos/asf/incubator-aurora/tree/8959b499
Diff: http://git-wip-us.apache.org/repos/asf/incubator-aurora/diff/8959b499
Branch: refs/heads/master
Commit: 8959b4995679c6d009d0fdf7a64e250ec33a3e0f
Parents: f9837da
Author: Zameer Manji <zm...@twopensource.com>
Authored: Tue Dec 2 17:46:00 2014 -0800
Committer: Bill Farner <wf...@apache.org>
Committed: Tue Dec 2 17:46:00 2014 -0800
----------------------------------------------------------------------
.../scheduler/mesos/MesosTaskFactory.java | 7 ++++---
.../mesos/MesosTaskFactoryImplTest.java | 20 +++++++++++++++++---
2 files changed, 21 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/8959b499/src/main/java/org/apache/aurora/scheduler/mesos/MesosTaskFactory.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/mesos/MesosTaskFactory.java b/src/main/java/org/apache/aurora/scheduler/mesos/MesosTaskFactory.java
index e0332c0..5bf2830 100644
--- a/src/main/java/org/apache/aurora/scheduler/mesos/MesosTaskFactory.java
+++ b/src/main/java/org/apache/aurora/scheduler/mesos/MesosTaskFactory.java
@@ -93,17 +93,18 @@ public interface MesosTaskFactory {
static final Resources MIN_THERMOS_RESOURCES = new Resources(
0.01,
Amount.of(128L, Data.MB),
- Amount.of(0L, Data.MB),
+ Amount.of(1L, Data.MB),
0);
/**
- * Minimum resources to allocate for a task. Mesos rejects tasks that have no CPU or no RAM.
+ * Minimum resources to allocate for a task. Mesos rejects tasks that have no CPU, no RAM, or
+ * no Disk.
*/
@VisibleForTesting
static final Resources MIN_TASK_RESOURCES = new Resources(
0.01,
Amount.of(1L, Data.MB),
- Amount.of(0L, Data.MB),
+ Amount.of(1L, Data.MB),
0);
/**
http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/8959b499/src/test/java/org/apache/aurora/scheduler/mesos/MesosTaskFactoryImplTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/aurora/scheduler/mesos/MesosTaskFactoryImplTest.java b/src/test/java/org/apache/aurora/scheduler/mesos/MesosTaskFactoryImplTest.java
index 22fb991..ddcb511 100644
--- a/src/test/java/org/apache/aurora/scheduler/mesos/MesosTaskFactoryImplTest.java
+++ b/src/test/java/org/apache/aurora/scheduler/mesos/MesosTaskFactoryImplTest.java
@@ -86,19 +86,24 @@ public class MesosTaskFactoryImplTest {
taskFactory = new MesosTaskFactoryImpl(config);
TaskInfo task = taskFactory.createFrom(TASK, SLAVE);
assertEquals(DEFAULT_EXECUTOR, task.getExecutor());
+
double taskCPU = config.getExecutorOverhead().getNumCpus()
+ TASK.getTask().getNumCpus()
- MIN_THERMOS_RESOURCES.getNumCpus();
long taskRamMB = config.getExecutorOverhead().getRam().as(Data.MB)
+ TASK.getTask().getRamMb()
- MIN_THERMOS_RESOURCES.getRam().as(Data.MB);
+ long taskDiskMB = config.getExecutorOverhead().getDisk().as(Data.MB)
+ + TASK.getTask().getDiskMb()
+ - MIN_THERMOS_RESOURCES.getDisk().as(Data.MB);
assertTrue(taskCPU > 0.0);
assertTrue(taskRamMB > 0);
+ assertTrue(taskDiskMB > 0);
assertEquals(ImmutableSet.of(
Resources.makeMesosResource(Resources.CPUS, taskCPU),
- Resources.makeMesosResource(Resources.DISK_MB, TASK.getTask().getDiskMb()),
+ Resources.makeMesosResource(Resources.DISK_MB, taskDiskMB),
Resources.makeMesosResource(Resources.RAM_MB, taskRamMB),
Resources.makeMesosRangeResource(
Resources.PORTS,
@@ -121,14 +126,18 @@ public class MesosTaskFactoryImplTest {
long taskRamMB = config.getExecutorOverhead().getRam().as(Data.MB)
+ TASK.getTask().getRamMb()
- MIN_THERMOS_RESOURCES.getRam().as(Data.MB);
+ long taskDiskMB = config.getExecutorOverhead().getDisk().as(Data.MB)
+ + TASK.getTask().getDiskMb()
+ - MIN_THERMOS_RESOURCES.getDisk().as(Data.MB);
assertTrue(taskCPU > 0.0);
assertTrue(taskRamMB > 0);
+ assertTrue(taskDiskMB > 0);
assertEquals(DEFAULT_EXECUTOR, task.getExecutor());
assertEquals(ImmutableSet.of(
Resources.makeMesosResource(Resources.CPUS, taskCPU),
- Resources.makeMesosResource(Resources.DISK_MB, TASK.getTask().getDiskMb()),
+ Resources.makeMesosResource(Resources.DISK_MB, taskDiskMB),
Resources.makeMesosResource(Resources.RAM_MB, taskRamMB)
),
ImmutableSet.copyOf(task.getResourcesList()));
@@ -147,12 +156,17 @@ public class MesosTaskFactoryImplTest {
+ TASK.getTask().getNumCpus()
- MIN_THERMOS_RESOURCES.getNumCpus();
+ long taskDiskMB = config.getExecutorOverhead().getDisk().as(Data.MB)
+ + TASK.getTask().getDiskMb()
+ - MIN_THERMOS_RESOURCES.getDisk().as(Data.MB);
+
assertTrue(taskCPU > 0.0);
+ assertTrue(taskDiskMB > 0);
assertEquals(ImmutableSet.of(
Resources.makeMesosResource(Resources.CPUS, taskCPU),
Resources.makeMesosResource(Resources.RAM_MB, MIN_TASK_RESOURCES.getRam().as(Data.MB)),
- Resources.makeMesosResource(Resources.DISK_MB, TASK.getTask().getDiskMb()),
+ Resources.makeMesosResource(Resources.DISK_MB, taskDiskMB),
Resources.makeMesosRangeResource(
Resources.PORTS,
ImmutableSet.copyOf(TASK.getAssignedPorts().values()))