YARN-8025. UsersManangers#getComputedResourceLimitForActiveUsers throws NPE due to preComputedActiveUserLimit is empty. 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/67f239c4 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/67f239c4 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/67f239c4 Branch: refs/heads/HDDS-4 Commit: 67f239c42f676237290d18ddbbc9aec369267692 Parents: e9159db Author: Weiwei Yang <w...@apache.org> Authored: Mon May 7 11:33:14 2018 +0800 Committer: Weiwei Yang <w...@apache.org> Committed: Mon May 7 11:33:14 2018 +0800 ---------------------------------------------------------------------- .../resourcemanager/scheduler/capacity/UsersManager.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/67f239c4/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/UsersManager.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/capacity/UsersManager.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/UsersManager.java index 7287c5b..747a488 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/UsersManager.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/UsersManager.java @@ -490,11 +490,12 @@ public class UsersManager implements AbstractUsersManager { Resource clusterResource, String nodePartition, SchedulingMode schedulingMode) { - Map<SchedulingMode, Resource> userLimitPerSchedulingMode = preComputedActiveUserLimit - .get(nodePartition); + Map<SchedulingMode, Resource> userLimitPerSchedulingMode; try { writeLock.lock(); + userLimitPerSchedulingMode = + preComputedActiveUserLimit.get(nodePartition); if (isRecomputeNeeded(schedulingMode, nodePartition, true)) { // recompute userLimitPerSchedulingMode = reComputeUserLimits(userName, @@ -548,11 +549,11 @@ public class UsersManager implements AbstractUsersManager { Resource clusterResource, String nodePartition, SchedulingMode schedulingMode) { - Map<SchedulingMode, Resource> userLimitPerSchedulingMode = preComputedAllUserLimit - .get(nodePartition); + Map<SchedulingMode, Resource> userLimitPerSchedulingMode; try { writeLock.lock(); + userLimitPerSchedulingMode = preComputedAllUserLimit.get(nodePartition); if (isRecomputeNeeded(schedulingMode, nodePartition, false)) { // recompute userLimitPerSchedulingMode = reComputeUserLimits(userName, --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org