Repository: hadoop Updated Branches: refs/heads/branch-3.1 9d0a68721 -> 815a00580
YARN-7636. Re-reservation count may overflow when cluster resource exhausted for a long time. contributed by Tao Yang. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/815a0058 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/815a0058 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/815a0058 Branch: refs/heads/branch-3.1 Commit: 815a00580a2ce0f4f590af0c75823a6e4f47693f Parents: 9d0a687 Author: Weiwei Yang <[email protected]> Authored: Fri Mar 16 18:57:31 2018 +0800 Committer: Weiwei Yang <[email protected]> Committed: Fri Mar 16 19:33:52 2018 +0800 ---------------------------------------------------------------------- .../scheduler/SchedulerApplicationAttempt.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/815a0058/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/SchedulerApplicationAttempt.java ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/SchedulerApplicationAttempt.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/SchedulerApplicationAttempt.java index 753c2b8..857e736 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/SchedulerApplicationAttempt.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/SchedulerApplicationAttempt.java @@ -418,7 +418,11 @@ public class SchedulerApplicationAttempt implements SchedulableEntity { protected void addReReservation( SchedulerRequestKey schedulerKey) { - reReservations.add(schedulerKey); + try { + reReservations.add(schedulerKey); + } catch (IllegalArgumentException e) { + // This happens when count = MAX_INT, ignore the exception + } } public int getReReservations(SchedulerRequestKey schedulerKey) { @@ -1006,8 +1010,13 @@ public class SchedulerApplicationAttempt implements SchedulableEntity { public int addMissedNonPartitionedRequestSchedulingOpportunity( SchedulerRequestKey schedulerKey) { - return missedNonPartitionedReqSchedulingOpportunity.add( - schedulerKey, 1) + 1; + try { + return missedNonPartitionedReqSchedulingOpportunity.add( + schedulerKey, 1) + 1; + } catch (IllegalArgumentException e) { + // This happens when count = MAX_INT, ignore the exception + return Integer.MAX_VALUE; + } } public void --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
