You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by vi...@apache.org on 2016/10/28 18:04:39 UTC
[41/50] [abbrv] hadoop git commit: YARN-2306. Add test for leakage of
reservation metrics in fair scheduler. (Hong Zhiguo and Yufei Gu via subru).
YARN-2306. Add test for leakage of reservation metrics in fair scheduler. (Hong Zhiguo and Yufei Gu via subru).
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/b2c4f24c
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/b2c4f24c
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/b2c4f24c
Branch: refs/heads/HDFS-9806
Commit: b2c4f24c31e73faa8f71d44db5de3aa91e3b7d5e
Parents: 28660f5
Author: Subru Krishnan <su...@apache.org>
Authored: Thu Oct 27 17:43:13 2016 -0700
Committer: Subru Krishnan <su...@apache.org>
Committed: Thu Oct 27 17:43:13 2016 -0700
----------------------------------------------------------------------
.../scheduler/fair/TestFairScheduler.java | 52 ++++++++++++++++++++
1 file changed, 52 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hadoop/blob/b2c4f24c/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/TestFairScheduler.java
----------------------------------------------------------------------
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/TestFairScheduler.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/TestFairScheduler.java
index e28b35a..f17726c 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/TestFairScheduler.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/TestFairScheduler.java
@@ -4761,4 +4761,56 @@ public class TestFairScheduler extends FairSchedulerTestBase {
rm1.stop();
rm2.stop();
}
+
+ @Test
+ public void testReservationMetrics() throws IOException {
+ scheduler.init(conf);
+ scheduler.start();
+ scheduler.reinitialize(conf, resourceManager.getRMContext());
+ QueueMetrics metrics = scheduler.getRootQueueMetrics();
+
+ RMNode node1 =
+ MockNodes
+ .newNodeInfo(1, Resources.createResource(4096, 4), 1, "127.0.0.1");
+ NodeAddedSchedulerEvent nodeEvent = new NodeAddedSchedulerEvent(node1);
+ scheduler.handle(nodeEvent);
+
+ ApplicationAttemptId appAttemptId = createAppAttemptId(1, 1);
+ createApplicationWithAMResource(appAttemptId, "default", "user1", null);
+
+ NodeUpdateSchedulerEvent updateEvent = new NodeUpdateSchedulerEvent(node1);
+ scheduler.update();
+ scheduler.handle(updateEvent);
+
+ createSchedulingRequestExistingApplication(1024, 1, 1, appAttemptId);
+ scheduler.handle(updateEvent);
+
+ // no reservation yet
+ assertEquals(0, metrics.getReservedContainers());
+ assertEquals(0, metrics.getReservedMB());
+ assertEquals(0, metrics.getReservedVirtualCores());
+
+ // create reservation of {4096, 4}
+ createSchedulingRequestExistingApplication(4096, 4, 1, appAttemptId);
+ scheduler.update();
+ scheduler.handle(updateEvent);
+
+ // reservation created
+ assertEquals(1, metrics.getReservedContainers());
+ assertEquals(4096, metrics.getReservedMB());
+ assertEquals(4, metrics.getReservedVirtualCores());
+
+ // remove AppAttempt
+ AppAttemptRemovedSchedulerEvent attRemoveEvent =
+ new AppAttemptRemovedSchedulerEvent(
+ appAttemptId,
+ RMAppAttemptState.KILLED,
+ false);
+ scheduler.handle(attRemoveEvent);
+
+ // The reservation metrics should be subtracted
+ assertEquals(0, metrics.getReservedContainers());
+ assertEquals(0, metrics.getReservedMB());
+ assertEquals(0, metrics.getReservedVirtualCores());
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org