This is an automated email from the ASF dual-hosted git repository. adamantal pushed a commit to branch trunk in repository https://gitbox.apache.org/repos/asf/hadoop.git
The following commit(s) were added to refs/heads/trunk by this push: new bb8446e YARN-10447. TestLeafQueue: ActivitiesManager thread might interfere with ongoing stubbing. Contributed by Peter Bacsko bb8446e is described below commit bb8446e80cededeb577bd26db76086bfe31fc340 Author: Adam Antal <adam.an...@cloudera.com> AuthorDate: Thu Oct 1 11:42:04 2020 +0200 YARN-10447. TestLeafQueue: ActivitiesManager thread might interfere with ongoing stubbing. Contributed by Peter Bacsko --- .../scheduler/capacity/CapacityScheduler.java | 20 +++++++++++++++++--- .../scheduler/capacity/TestLeafQueue.java | 1 + 2 files changed, 18 insertions(+), 3 deletions(-) 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/CapacityScheduler.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/CapacityScheduler.java index 678fd2d..5a7db58 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/CapacityScheduler.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/CapacityScheduler.java @@ -245,6 +245,8 @@ public class CapacityScheduler extends private CSMaxRunningAppsEnforcer maxRunningEnforcer; + private boolean activitiesManagerEnabled = true; + public CapacityScheduler() { super(CapacityScheduler.class.getName()); this.maxRunningEnforcer = new CSMaxRunningAppsEnforcer(this); @@ -342,7 +344,9 @@ public class CapacityScheduler extends this.workflowPriorityMappingsMgr = new WorkflowPriorityMappingsManager(); this.activitiesManager = new ActivitiesManager(rmContext); - activitiesManager.init(conf); + if (activitiesManagerEnabled) { + activitiesManager.init(conf); + } initializeQueues(this.conf); this.isLazyPreemptionEnabled = conf.getLazyPreemptionEnabled(); @@ -400,7 +404,9 @@ public class CapacityScheduler extends private void startSchedulerThreads() { writeLock.lock(); try { - activitiesManager.start(); + if (activitiesManagerEnabled) { + activitiesManager.start(); + } if (scheduleAsynchronously) { Preconditions.checkNotNull(asyncSchedulerThreads, "asyncSchedulerThreads is null"); @@ -434,7 +440,9 @@ public class CapacityScheduler extends public void serviceStop() throws Exception { writeLock.lock(); try { - this.activitiesManager.stop(); + if (activitiesManagerEnabled) { + this.activitiesManager.stop(); + } if (scheduleAsynchronously && asyncSchedulerThreads != null) { for (Thread t : asyncSchedulerThreads) { t.interrupt(); @@ -3286,6 +3294,7 @@ public class CapacityScheduler extends this.maxRunningEnforcer = enforcer; } + /** * Returning true as capacity scheduler supports placement constraints. */ @@ -3293,4 +3302,9 @@ public class CapacityScheduler extends public boolean placementConstraintEnabled() { return true; } + + @VisibleForTesting + public void setActivitiesManagerEnabled(boolean enabled) { + this.activitiesManagerEnabled = enabled; + } } diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestLeafQueue.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestLeafQueue.java index 3bfb0ab..02545cb 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestLeafQueue.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestLeafQueue.java @@ -162,6 +162,7 @@ public class TestLeafQueue { private void setUpInternal(ResourceCalculator rC, boolean withNodeLabels) throws Exception { CapacityScheduler spyCs = new CapacityScheduler(); + spyCs.setActivitiesManagerEnabled(false); queues = new CSQueueStore(); cs = spy(spyCs); rmContext = TestUtils.getMockRMContext(); --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org