You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by yu...@apache.org on 2017/05/25 21:23:06 UTC
hadoop git commit: YARN-6582. FSAppAttempt demand can be updated
atomically in updateDemand(). (Karthik Kambatla via Yufei Gu)
Repository: hadoop
Updated Branches:
refs/heads/trunk 3fd6a2da4 -> 87590090c
YARN-6582. FSAppAttempt demand can be updated atomically in updateDemand(). (Karthik Kambatla via Yufei Gu)
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/87590090
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/87590090
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/87590090
Branch: refs/heads/trunk
Commit: 87590090c887829e874a7132be9cf8de061437d6
Parents: 3fd6a2d
Author: Yufei Gu <yu...@apache.org>
Authored: Thu May 25 14:22:13 2017 -0700
Committer: Yufei Gu <yu...@apache.org>
Committed: Thu May 25 14:22:13 2017 -0700
----------------------------------------------------------------------
.../scheduler/fair/FSAppAttempt.java | 23 +++++++++-----------
1 file changed, 10 insertions(+), 13 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hadoop/blob/87590090/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/FSAppAttempt.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/fair/FSAppAttempt.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/FSAppAttempt.java
index 4f7e164..a5772ba 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/FSAppAttempt.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/FSAppAttempt.java
@@ -1286,24 +1286,21 @@ public class FSAppAttempt extends SchedulerApplicationAttempt
@Override
public void updateDemand() {
- demand = Resources.createResource(0);
// Demand is current consumption plus outstanding requests
- Resources.addTo(demand, getCurrentConsumption());
+ Resource tmpDemand = Resources.clone(getCurrentConsumption());
// Add up outstanding resource requests
- try {
- writeLock.lock();
- for (SchedulerRequestKey k : getSchedulerKeys()) {
- PendingAsk pendingAsk = getPendingAsk(k, ResourceRequest.ANY);
- if (pendingAsk.getCount() > 0) {
- Resources.multiplyAndAddTo(demand,
- pendingAsk.getPerAllocationResource(),
- pendingAsk.getCount());
- }
+ for (SchedulerRequestKey k : getSchedulerKeys()) {
+ PendingAsk pendingAsk = getPendingAsk(k, ResourceRequest.ANY);
+ if (pendingAsk.getCount() > 0) {
+ Resources.multiplyAndAddTo(tmpDemand,
+ pendingAsk.getPerAllocationResource(),
+ pendingAsk.getCount());
}
- } finally {
- writeLock.unlock();
}
+
+ // Update demand
+ demand = tmpDemand;
}
@Override
---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org