From dd6aa0cf124786e473bf373bc5e0957e50fc9b5d Mon Sep 17 00:00:00 2001 From: Jason Darrell Lowe Date: Tue, 15 Jan 2013 14:45:08 +0000 Subject: [PATCH] MAPREDUCE-4936. JobImpl uber checks for cpu are wrong. Contributed by Arun C Murthy git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1433445 13f79535-47bb-0310-9956-ffa450edef68 --- hadoop-mapreduce-project/CHANGES.txt | 3 +++ .../hadoop/mapreduce/v2/app/job/impl/JobImpl.java | 10 +++++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/hadoop-mapreduce-project/CHANGES.txt b/hadoop-mapreduce-project/CHANGES.txt index cd6a4715b4..491cc3d14b 100644 --- a/hadoop-mapreduce-project/CHANGES.txt +++ b/hadoop-mapreduce-project/CHANGES.txt @@ -253,6 +253,9 @@ Release 2.0.3-alpha - Unreleased MAPREDUCE-1700. User supplied dependencies may conflict with MapReduce system JARs. (tomwhite) + MAPREDUCE-4936. JobImpl uber checks for cpu are wrong (Arun C Murthy via + jlowe) + Release 2.0.2-alpha - 2012-09-07 INCOMPATIBLE CHANGES diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/job/impl/JobImpl.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/job/impl/JobImpl.java index 7306cda792..bf5e96ce1c 100644 --- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/job/impl/JobImpl.java +++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/job/impl/JobImpl.java @@ -1068,9 +1068,13 @@ private void makeUberDecision(long dataInputLength) { boolean smallCpu = ( Math.max( - conf.getInt(MRJobConfig.MAP_CPU_VCORES, 1), - conf.getInt(MRJobConfig.REDUCE_CPU_VCORES, 1)) < - sysCPUSizeForUberSlot + conf.getInt( + MRJobConfig.MAP_CPU_VCORES, + MRJobConfig.DEFAULT_MAP_CPU_VCORES), + conf.getInt( + MRJobConfig.REDUCE_CPU_VCORES, + MRJobConfig.DEFAULT_REDUCE_CPU_VCORES)) + <= sysCPUSizeForUberSlot ); boolean notChainJob = !isChainJob(conf);