MAPREDUCE-7138. ThrottledContainerAllocator in MRAppBenchmark should implement RMHeartbeatHandler. Contributed by Oleksandr Shevchenko
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/8382b860 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/8382b860 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/8382b860 Branch: refs/heads/YARN-7402 Commit: 8382b860d4ef4f20d000537ded42a88e98bd2190 Parents: 34b2237 Author: Jason Lowe <[email protected]> Authored: Tue Sep 18 17:06:32 2018 -0500 Committer: Jason Lowe <[email protected]> Committed: Tue Sep 18 17:06:32 2018 -0500 ---------------------------------------------------------------------- .../hadoop/mapreduce/v2/app/MRAppBenchmark.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/8382b860/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/MRAppBenchmark.java ---------------------------------------------------------------------- diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/MRAppBenchmark.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/MRAppBenchmark.java index 5e6697b..efe150f 100644 --- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/MRAppBenchmark.java +++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/MRAppBenchmark.java @@ -33,10 +33,12 @@ import org.apache.hadoop.mapreduce.v2.app.job.event.TaskAttemptContainerAssigned import org.apache.hadoop.mapreduce.v2.app.rm.ContainerAllocator; import org.apache.hadoop.mapreduce.v2.app.rm.ContainerAllocatorEvent; import org.apache.hadoop.mapreduce.v2.app.rm.RMContainerAllocator; +import org.apache.hadoop.mapreduce.v2.app.rm.RMHeartbeatHandler; import org.apache.hadoop.mapreduce.v2.app.rm.preemption.AMPreemptionPolicy; import org.apache.hadoop.mapreduce.v2.app.rm.preemption.NoopAMPreemptionPolicy; import org.apache.hadoop.service.AbstractService; import org.apache.hadoop.test.GenericTestUtils; +import org.apache.hadoop.util.Time; import org.apache.hadoop.yarn.api.ApplicationMasterProtocol; import org.apache.hadoop.yarn.api.protocolrecords.AllocateRequest; import org.apache.hadoop.yarn.api.protocolrecords.AllocateResponse; @@ -116,7 +118,7 @@ public class MRAppBenchmark { } class ThrottledContainerAllocator extends AbstractService - implements ContainerAllocator { + implements ContainerAllocator, RMHeartbeatHandler { private int containerCount; private Thread thread; private BlockingQueue<ContainerAllocatorEvent> eventQueue = @@ -182,6 +184,15 @@ public class MRAppBenchmark { } super.serviceStop(); } + + @Override + public long getLastHeartbeatTime() { + return Time.now(); + } + + @Override + public void runOnNextHeartbeat(Runnable callback) { + } } } @@ -264,7 +275,7 @@ public class MRAppBenchmark { }); } - @Test + @Test(timeout = 60000) public void benchmark2() throws Exception { int maps = 100; // Adjust for benchmarking, start with a couple of thousands int reduces = 50; --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
