Repository: hadoop Updated Branches: refs/heads/trunk 21c666146 -> 154cfb2b6
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/154cfb2b Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/154cfb2b Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/154cfb2b Branch: refs/heads/trunk Commit: 154cfb2b620002a7d3b7fdbf8b68236c432771e1 Parents: 21c6661 Author: Weiwei Yang <[email protected]> Authored: Fri Mar 16 18:57:31 2018 +0800 Committer: Weiwei Yang <[email protected]> Committed: Fri Mar 16 18:57:31 2018 +0800 ---------------------------------------------------------------------- .../scheduler/SchedulerApplicationAttempt.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/154cfb2b/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]
