Quellcode durchsuchen

Revert "YARN-3181. FairScheduler: Fix up outdated findbugs issues. (kasha)"

This reverts commit c2b185def846f5577a130003a533b9c377b58fab.
Karthik Kambatla vor 10 Jahren
Ursprung
Commit
32b4330456

+ 0 - 2
hadoop-yarn-project/CHANGES.txt

@@ -320,8 +320,6 @@ Release 2.7.0 - UNRELEASED
     YARN-2079. Recover NonAggregatingLogHandler state upon nodemanager
     restart. (Jason Lowe via junping_du) 
 
-    YARN-3181. FairScheduler: Fix up outdated findbugs issues. (kasha)
-
     YARN-3124. Fixed CS LeafQueue/ParentQueue to use QueueCapacities to track
     capacities-by-label. (Wangda Tan via jianhe)
 

+ 27 - 0
hadoop-yarn-project/hadoop-yarn/dev-support/findbugs-exclude.xml

@@ -152,12 +152,22 @@
     <Class name="org.apache.hadoop.yarn.server.nodemanager.containermanager.logaggregation.LogAggregationService" />
     <Bug pattern="IS2_INCONSISTENT_SYNC" />
   </Match>
+  <Match>
+    <Class name="org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.AllocationFileLoaderService" />
+    <Field name="allocFile" />
+    <Bug pattern="IS2_INCONSISTENT_SYNC" />
+  </Match>
   <!-- Inconsistent sync warning - minimumAllocation is only initialized once and never changed -->
   <Match>
     <Class name="org.apache.hadoop.yarn.server.resourcemanager.scheduler.AbstractYarnScheduler" />
     <Field name="minimumAllocation" />
     <Bug pattern="IS2_INCONSISTENT_SYNC" />
   </Match>
+  <Match>
+    <Class name="org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FSSchedulerNode" />
+    <Method name="reserveResource" />
+    <Bug pattern="BC_UNCONFIRMED_CAST" /> 
+  </Match>
   <!-- Inconsistent sync warning - reinitialize read from other queue does not need sync-->
   <Match>
     <Class name="org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.LeafQueue" />
@@ -215,6 +225,18 @@
     <Field name="scheduleAsynchronously" />
     <Bug pattern="IS2_INCONSISTENT_SYNC" />
   </Match>
+  <!-- Inconsistent sync warning - updateInterval is only initialized once and never changed -->
+  <Match>
+    <Class name="org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler" />
+    <Field name="updateInterval" />
+    <Bug pattern="IS2_INCONSISTENT_SYNC" />
+  </Match>
+  <!-- Inconsistent sync warning - callDurationMetrics is only initialized once and never changed -->
+  <Match>
+    <Class name="org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler" />
+    <Field name="fsOpDurations" />
+    <Bug pattern="IS2_INCONSISTENT_SYNC" />
+  </Match>
 
   <!-- Inconsistent sync warning - numRetries is only initialized once and never changed -->
   <Match>
@@ -414,6 +436,11 @@
     <Field name="queue" />
     <Bug pattern="IS2_INCONSISTENT_SYNC" />
   </Match>
+  <Match>
+    <Class name="org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler" />
+    <Field name="allocConf" />
+    <Bug pattern="IS2_INCONSISTENT_SYNC" />
+  </Match>
   <Match>
     <Class name="org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode" />
     <Field name="numContainers" />

+ 3 - 10
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationConfiguration.java

@@ -33,9 +33,6 @@ import org.apache.hadoop.yarn.util.resource.Resources;
 
 import com.google.common.annotations.VisibleForTesting;
 
-import javax.annotation.concurrent.ThreadSafe;
-
-@ThreadSafe
 public class AllocationConfiguration extends ReservationSchedulerConfiguration {
   private static final AccessControlList EVERYBODY_ACL = new AccessControlList("*");
   private static final AccessControlList NOBODY_ACL = new AccessControlList(" ");
@@ -207,16 +204,12 @@ public class AllocationConfiguration extends ReservationSchedulerConfiguration {
   }
 
   public ResourceWeights getQueueWeight(String queue) {
-    synchronized (queueWeights) {
-      ResourceWeights weight = queueWeights.get(queue);
-      return (weight == null) ? ResourceWeights.NEUTRAL : weight;
-    }
+    ResourceWeights weight = queueWeights.get(queue);
+    return (weight == null) ? ResourceWeights.NEUTRAL : weight;
   }
 
   public void setQueueWeight(String queue, ResourceWeights weight) {
-    synchronized (queueWeights) {
-      queueWeights.put(queue, weight);
-    }
+    queueWeights.put(queue, weight);
   }
   
   public int getUserMaxApps(String user) {

+ 1 - 1
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationFileLoaderService.java

@@ -201,7 +201,7 @@ public class AllocationFileLoaderService extends AbstractService {
    * @throws ParserConfigurationException if XML parser is misconfigured.
    * @throws SAXException if config file is malformed.
    */
-  public void reloadAllocations() throws IOException,
+  public synchronized void reloadAllocations() throws IOException,
       ParserConfigurationException, SAXException, AllocationConfigurationException {
     if (allocFile == null) {
       return;

+ 0 - 3
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/FSOpDurations.java

@@ -31,8 +31,6 @@ import org.apache.hadoop.metrics2.lib.MetricsRegistry;
 import static org.apache.hadoop.metrics2.lib.Interns.info;
 import org.apache.hadoop.metrics2.lib.MutableRate;
 
-import javax.annotation.concurrent.ThreadSafe;
-
 /**
  * Class to capture the performance metrics of FairScheduler.
  * This should be a singleton.
@@ -40,7 +38,6 @@ import javax.annotation.concurrent.ThreadSafe;
 @InterfaceAudience.Private
 @InterfaceStability.Unstable
 @Metrics(context="fairscheduler-op-durations")
-@ThreadSafe
 public class FSOpDurations implements MetricsSource {
 
   @Metric("Duration for a continuous scheduling run")