Return-Path: Delivered-To: apmail-hadoop-mapreduce-commits-archive@minotaur.apache.org Received: (qmail 8165 invoked from network); 23 Apr 2010 09:11:34 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 23 Apr 2010 09:11:34 -0000 Received: (qmail 58258 invoked by uid 500); 23 Apr 2010 09:11:34 -0000 Delivered-To: apmail-hadoop-mapreduce-commits-archive@hadoop.apache.org Received: (qmail 58183 invoked by uid 500); 23 Apr 2010 09:11:32 -0000 Mailing-List: contact mapreduce-commits-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: mapreduce-dev@hadoop.apache.org Delivered-To: mailing list mapreduce-commits@hadoop.apache.org Received: (qmail 58175 invoked by uid 99); 23 Apr 2010 09:11:31 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 23 Apr 2010 09:11:31 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 23 Apr 2010 09:11:26 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id EEF212388900; Fri, 23 Apr 2010 09:10:42 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r937201 - in /hadoop/mapreduce/trunk: ./ src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/ src/contrib/capacity-scheduler/src/test/org/apache/hadoop/mapred/ src/java/org/apache/hadoop/mapred/ src/test/ Date: Fri, 23 Apr 2010 09:10:42 -0000 To: mapreduce-commits@hadoop.apache.org From: yhemanth@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20100423091042.EEF212388900@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: yhemanth Date: Fri Apr 23 09:10:42 2010 New Revision: 937201 URL: http://svn.apache.org/viewvc?rev=937201&view=rev Log: MAPREDUCE-1695. Include capacity scheduler in findbugs and javadoc-dev targets and also fix existing warnings. Contributed by Hong Tang. Modified: hadoop/mapreduce/trunk/CHANGES.txt hadoop/mapreduce/trunk/build.xml hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/CapacityTaskScheduler.java hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/JobInitializationPoller.java hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/JobQueue.java hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/QueueSchedulingContext.java hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/TaskDataView.java hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/TaskSchedulingContext.java hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/test/org/apache/hadoop/mapred/CapacityTestUtils.java hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/test/org/apache/hadoop/mapred/TestRefreshOfQueues.java hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/JobTracker.java hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/TaskScheduler.java hadoop/mapreduce/trunk/src/test/findbugsExcludeFile.xml Modified: hadoop/mapreduce/trunk/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/CHANGES.txt?rev=937201&r1=937200&r2=937201&view=diff ============================================================================== --- hadoop/mapreduce/trunk/CHANGES.txt (original) +++ hadoop/mapreduce/trunk/CHANGES.txt Fri Apr 23 09:10:42 2010 @@ -553,6 +553,9 @@ Trunk (unreleased changes) MAPREDUCE-1409. IOExceptions thrown from FIleOutputCommitter::abortTask should cause the task to fail. (Amareshwari Sriramadasu via cdouglas) + MAPREDUCE-1695. Include capacity scheduler in findbugs and javadoc-dev + targets and also fix existing warnings. (Hong Tang via yhemanth) + Release 0.21.0 - Unreleased INCOMPATIBLE CHANGES Modified: hadoop/mapreduce/trunk/build.xml URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/build.xml?rev=937201&r1=937200&r2=937201&view=diff ============================================================================== --- hadoop/mapreduce/trunk/build.xml (original) +++ hadoop/mapreduce/trunk/build.xml Fri Apr 23 09:10:42 2010 @@ -742,6 +742,7 @@ + @@ -773,12 +774,14 @@ + + @@ -836,6 +839,7 @@ + Modified: hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/CapacityTaskScheduler.java URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/CapacityTaskScheduler.java?rev=937201&r1=937200&r2=937201&view=diff ============================================================================== --- hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/CapacityTaskScheduler.java (original) +++ hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/CapacityTaskScheduler.java Fri Apr 23 09:10:42 2010 @@ -578,16 +578,20 @@ class CapacityTaskScheduler extends Task @Override Task obtainNewTask(TaskTrackerStatus taskTracker, JobInProgress job) throws IOException { - ClusterStatus clusterStatus = - scheduler.taskTrackerManager.getClusterStatus(); - int numTaskTrackers = clusterStatus.getTaskTrackers(); - return job.obtainNewMapTask(taskTracker, numTaskTrackers, - scheduler.taskTrackerManager.getNumberOfUniqueHosts()); + synchronized (scheduler) { + ClusterStatus clusterStatus = scheduler.taskTrackerManager + .getClusterStatus(); + int numTaskTrackers = clusterStatus.getTaskTrackers(); + return job.obtainNewMapTask(taskTracker, numTaskTrackers, + scheduler.taskTrackerManager.getNumberOfUniqueHosts()); + } } @Override int getClusterCapacity() { - return scheduler.taskTrackerManager.getClusterStatus().getMaxMapTasks(); + synchronized (scheduler) { + return scheduler.taskTrackerManager.getClusterStatus().getMaxMapTasks(); + } } @Override @@ -621,17 +625,21 @@ class CapacityTaskScheduler extends Task @Override Task obtainNewTask(TaskTrackerStatus taskTracker, JobInProgress job) throws IOException { - ClusterStatus clusterStatus = - scheduler.taskTrackerManager.getClusterStatus(); - int numTaskTrackers = clusterStatus.getTaskTrackers(); - return job.obtainNewReduceTask(taskTracker, numTaskTrackers, - scheduler.taskTrackerManager.getNumberOfUniqueHosts()); + synchronized (scheduler) { + ClusterStatus clusterStatus = scheduler.taskTrackerManager + .getClusterStatus(); + int numTaskTrackers = clusterStatus.getTaskTrackers(); + return job.obtainNewReduceTask(taskTracker, numTaskTrackers, + scheduler.taskTrackerManager.getNumberOfUniqueHosts()); + } } @Override int getClusterCapacity() { - return scheduler.taskTrackerManager.getClusterStatus() - .getMaxReduceTasks(); + synchronized (scheduler) { + return scheduler.taskTrackerManager.getClusterStatus() + .getMaxReduceTasks(); + } } @Override @@ -863,7 +871,7 @@ class CapacityTaskScheduler extends Task } /** mostly for testing purposes */ - void setInitializationPoller(JobInitializationPoller p) { + synchronized void setInitializationPoller(JobInitializationPoller p) { this.initializationPoller = p; } @@ -888,7 +896,7 @@ class CapacityTaskScheduler extends Task * provided for the test classes * lets you update the QSI objects and sorted collections */ - void updateContextInfoForTests() { + synchronized void updateContextInfoForTests() { ClusterStatus c = taskTrackerManager.getClusterStatus(); int mapClusterCapacity = c.getMaxMapTasks(); int reduceClusterCapacity = c.getMaxReduceTasks(); @@ -1011,7 +1019,7 @@ class CapacityTaskScheduler extends Task return jobCollection; } - JobInitializationPoller getInitializationPoller() { + synchronized JobInitializationPoller getInitializationPoller() { return initializationPoller; } Modified: hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/JobInitializationPoller.java URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/JobInitializationPoller.java?rev=937201&r1=937200&r2=937201&view=diff ============================================================================== --- hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/JobInitializationPoller.java (original) +++ hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/JobInitializationPoller.java Fri Apr 23 09:10:42 2010 @@ -191,6 +191,7 @@ public class JobInitializationPoller ext if (jobs == null) { LOG.error("Invalid queue passed to the thread : " + queue + " For job :: " + job.getJobID()); + return; } synchronized (jobs) { JobSchedulingInfo schedInfo = new JobSchedulingInfo(job); @@ -212,14 +213,12 @@ public class JobInitializationPoller ext * jobs allowed to be initialize per user in the queue. * */ - private class QueueInfo { - String queue; + private static class QueueInfo { int maxUsersAllowedToInitialize; int maxJobsPerUserToInitialize; - public QueueInfo(String queue, int maxUsersAllowedToInitialize, + public QueueInfo(int maxUsersAllowedToInitialize, int maxJobsPerUserToInitialize) { - this.queue = queue; this.maxJobsPerUserToInitialize = maxJobsPerUserToInitialize; this.maxUsersAllowedToInitialize = maxUsersAllowedToInitialize; } @@ -290,8 +289,7 @@ public class JobInitializationPoller ext int maxJobsPerUserToInitialize = schedulerConf.getMaxJobsPerUserToInitialize(queue); QueueInfo qi = - new QueueInfo(queue, maxUsersToInitialize, - maxJobsPerUserToInitialize); + new QueueInfo(maxUsersToInitialize, maxJobsPerUserToInitialize); jobQueues.put(queue, qi); } sleepInterval = schedulerConf.getSleepInterval(); Modified: hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/JobQueue.java URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/JobQueue.java?rev=937201&r1=937200&r2=937201&view=diff ============================================================================== --- hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/JobQueue.java (original) +++ hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/JobQueue.java Fri Apr 23 09:10:42 2010 @@ -161,18 +161,17 @@ class JobQueue extends AbstractQueue { j.getProfile().getUser(), i.intValue() + numReduceSlotsForThisJob); if (LOG.isDebugEnabled()) { - LOG.debug( - String.format( - "updateQSI: job %s: run(m)=%d, " + synchronized (j) { + LOG.debug(String.format("updateQSI: job %s: run(m)=%d, " + "occupied(m)=%d, run(r)=%d, occupied(r)=%d, finished(m)=%d," + " finished(r)=%d, failed(m)=%d, failed(r)=%d, " - + "spec(m)=%d, spec(r)=%d, total(m)=%d, total(r)=%d", j - .getJobID().toString(), numMapsRunningForThisJob, - numMapSlotsForThisJob, numReducesRunningForThisJob, - numReduceSlotsForThisJob, j - .finishedMaps(), j.finishedReduces(), j.failedMapTasks, - j.failedReduceTasks, j.speculativeMapTasks, j.speculativeReduceTasks, - j.numMapTasks, j.numReduceTasks)); + + "spec(m)=%d, spec(r)=%d, total(m)=%d, total(r)=%d", j.getJobID() + .toString(), numMapsRunningForThisJob, numMapSlotsForThisJob, + numReducesRunningForThisJob, numReduceSlotsForThisJob, j + .finishedMaps(), j.finishedReduces(), j.failedMapTasks, + j.failedReduceTasks, j.speculativeMapTasks, + j.speculativeReduceTasks, j.numMapTasks, j.numReduceTasks)); + } } /* @@ -355,8 +354,6 @@ class JobQueue extends AbstractQueue { } public void jobUpdated(JobChangeEvent event) { - JobInProgress job = event.getJobInProgress(); - // Check if this is the status change if (event instanceof JobStatusChangeEvent) { jobStateChanged((JobStatusChangeEvent) event); Modified: hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/QueueSchedulingContext.java URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/QueueSchedulingContext.java?rev=937201&r1=937200&r2=937201&view=diff ============================================================================== --- hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/QueueSchedulingContext.java (original) +++ hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/QueueSchedulingContext.java Fri Apr 23 09:10:42 2010 @@ -101,12 +101,12 @@ public class QueueSchedulingContext { QueueSchedulingContext( String queueName, float capacityPercent, float maxCapacityPercent, int ulMin) { - this.setQueueName(new String(queueName)); + this.setQueueName(queueName); this.setCapacityPercent(capacityPercent); this.setMaxCapacityPercent(maxCapacityPercent); this.setUlMin(ulMin); - this.setMapTSC(new TaskSchedulingContext(TaskType.MAP)); - this.setReduceTSC(new TaskSchedulingContext(TaskType.REDUCE)); + this.setMapTSC(new TaskSchedulingContext()); + this.setReduceTSC(new TaskSchedulingContext()); } /** Modified: hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/TaskDataView.java URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/TaskDataView.java?rev=937201&r1=937200&r2=937201&view=diff ============================================================================== --- hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/TaskDataView.java (original) +++ hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/TaskDataView.java Fri Apr 23 09:10:42 2010 @@ -29,8 +29,6 @@ import org.apache.hadoop.mapreduce.TaskT * */ abstract class TaskDataView { - TaskType type; - abstract int getRunningTasks(JobInProgress job); abstract int getPendingTasks(JobInProgress job); @@ -80,10 +78,7 @@ abstract class TaskDataView { * The data view for map tasks */ static class MapTaskDataView extends TaskDataView { - TaskType type; - MapTaskDataView() { - type = TaskType.MAP; } @Override @@ -118,10 +113,7 @@ abstract class TaskDataView { * The data view for reduce tasks */ static class ReduceTaskDataView extends TaskDataView { - TaskType type; - ReduceTaskDataView() { - type = TaskType.REDUCE; } @Override Modified: hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/TaskSchedulingContext.java URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/TaskSchedulingContext.java?rev=937201&r1=937200&r2=937201&view=diff ============================================================================== --- hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/TaskSchedulingContext.java (original) +++ hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/java/org/apache/hadoop/mapred/TaskSchedulingContext.java Fri Apr 23 09:10:42 2010 @@ -19,6 +19,7 @@ package org.apache.hadoop.mapred; import org.apache.hadoop.mapreduce.TaskType; +import java.util.Iterator; import java.util.Map; import java.util.HashMap; import java.util.Set; @@ -40,8 +41,6 @@ import java.util.Set; * ******************************************************************** */ public class TaskSchedulingContext { - - private TaskType type; /** * the actual capacity, which depends on how many slots are available * in the cluster at any given time. @@ -67,10 +66,6 @@ public class TaskSchedulingContext { " %s running reduce tasks using %d reduce slots." + " %d additional slots reserved."; - public TaskSchedulingContext(TaskType type) { - this.type = type; - } - /** * reset the variables associated with tasks */ @@ -188,11 +183,12 @@ public class TaskSchedulingContext { } private void updateNoOfSlotsOccupiedByUser(Map nou) { - Set keys = nou.keySet(); - for (String key : keys) { - if (this.numSlotsOccupiedByUser.containsKey(key)) { - int currentVal = this.numSlotsOccupiedByUser.get(key); - this.numSlotsOccupiedByUser.put(key, currentVal + nou.get(key)); + for (Iterator> it = nou.entrySet().iterator(); it.hasNext(); ) { + Map.Entry entry = it.next(); + String key = entry.getKey(); + Integer currentVal = numSlotsOccupiedByUser.get(key); + if (currentVal != null) { + this.numSlotsOccupiedByUser.put(key, currentVal + entry.getValue()); } } } Modified: hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/test/org/apache/hadoop/mapred/CapacityTestUtils.java URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/test/org/apache/hadoop/mapred/CapacityTestUtils.java?rev=937201&r1=937200&r2=937201&view=diff ============================================================================== --- hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/test/org/apache/hadoop/mapred/CapacityTestUtils.java (original) +++ hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/test/org/apache/hadoop/mapred/CapacityTestUtils.java Fri Apr 23 09:10:42 2010 @@ -339,7 +339,7 @@ public class CapacityTestUtils { } @Override - public Task obtainNewMapTask( + public synchronized Task obtainNewMapTask( final TaskTrackerStatus tts, int clusterSize, int ignored) throws IOException { boolean areAllMapsRunning = (mapTaskCtr == numMapTasks); @@ -385,7 +385,7 @@ public class CapacityTestUtils { } @Override - public Task obtainNewReduceTask( + public synchronized Task obtainNewReduceTask( final TaskTrackerStatus tts, int clusterSize, int ignored) throws IOException { boolean areAllReducesRunning = (redTaskCtr == numReduceTasks); Modified: hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/test/org/apache/hadoop/mapred/TestRefreshOfQueues.java URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/test/org/apache/hadoop/mapred/TestRefreshOfQueues.java?rev=937201&r1=937200&r2=937201&view=diff ============================================================================== --- hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/test/org/apache/hadoop/mapred/TestRefreshOfQueues.java (original) +++ hadoop/mapreduce/trunk/src/contrib/capacity-scheduler/src/test/org/apache/hadoop/mapred/TestRefreshOfQueues.java Fri Apr 23 09:10:42 2010 @@ -91,6 +91,18 @@ public class TestRefreshOfQueues { } /** + * Helper method that ensures TaskScheduler is locked before calling + * {@link QueueManager#refreshQueues(Configuration, + * org.apache.hadoop.mapred.TaskScheduler.QueueRefresher)}. + */ + private static void refreshQueues(QueueManager qm, Configuration conf, + TaskScheduler ts) throws IOException { + synchronized (ts) { + qm.refreshQueues(conf, ts.getQueueRefresher()); + } + } + + /** * @throws Throwable */ @Test @@ -160,8 +172,7 @@ public class TestRefreshOfQueues { queueConfigFile.getAbsolutePath(), new JobQueueInfo[] { queues[0] }); // Now do scheduler refresh. - taskTrackerManager.getQueueManager().refreshQueues(null, - scheduler.getQueueRefresher()); + refreshQueues(taskTrackerManager.getQueueManager(), null, scheduler); allQueues = getAllQueues(scheduler); @@ -251,9 +262,7 @@ public class TestRefreshOfQueues { QueueManagerTestUtils.writeQueueConfigurationFile( queueConfigFile.getAbsolutePath(), new JobQueueInfo[]{queues[0]}); - taskTrackerManager.getQueueManager().refreshQueues( - null, - scheduler.getQueueRefresher()); + refreshQueues(taskTrackerManager.getQueueManager(), null, scheduler); job1 = taskTrackerManager.submitJobAndInit( @@ -350,8 +359,7 @@ public class TestRefreshOfQueues { queueConfigFile.getAbsolutePath(), new JobQueueInfo[] { queues[0] }); try { - taskTrackerManager.getQueueManager().refreshQueues(null, - scheduler.getQueueRefresher()); + refreshQueues(taskTrackerManager.getQueueManager(), null, scheduler); } catch (IOException ioe) { assertTrue(ioe.getMessage().contains( String.format(QueueHierarchyBuilder.TOTAL_CAPACITY_OVERFLOWN_MSG, @@ -422,9 +430,7 @@ public class TestRefreshOfQueues { QueueManagerTestUtils.writeQueueConfigurationFile( queueConfigFile.getAbsolutePath(), new JobQueueInfo[]{queues[0]}); - taskTrackerManager.getQueueManager().refreshQueues( - null, - scheduler.getQueueRefresher()); + refreshQueues(taskTrackerManager.getQueueManager(), null, scheduler); job1 = taskTrackerManager.submitJobAndInit( Modified: hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/JobTracker.java URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/JobTracker.java?rev=937201&r1=937200&r2=937201&view=diff ============================================================================== --- hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/JobTracker.java (original) +++ hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/JobTracker.java Fri Apr 23 09:10:42 2010 @@ -4298,10 +4298,12 @@ public class JobTracker implements MRCon public void refreshQueues() throws IOException{ LOG.info("Refreshing queue information. requested by : " + UserGroupInformation.getCurrentUser().getShortUserName()); - this.queueManager.refreshQueues(new Configuration(this.conf), - taskScheduler.getQueueRefresher()); + synchronized (taskScheduler) { + queueManager.refreshQueues(new Configuration(this.conf), taskScheduler + .getQueueRefresher()); + } } - + private void initializeTaskMemoryRelatedConfig() { memSizeForMapSlotOnJT = JobConf.normalizeMemoryConfigValue(conf.getLong( Modified: hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/TaskScheduler.java URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/TaskScheduler.java?rev=937201&r1=937200&r2=937201&view=diff ============================================================================== --- hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/TaskScheduler.java (original) +++ hadoop/mapreduce/trunk/src/java/org/apache/hadoop/mapred/TaskScheduler.java Fri Apr 23 09:10:42 2010 @@ -99,6 +99,9 @@ abstract class TaskScheduler implements * {@link QueueManager} whenever it gets a request from an administrator to * refresh its own queue-configuration. This method has a documented contract * between the {@link QueueManager} and the {@link TaskScheduler}. + * + * Before calling QueueRefresher, the caller must hold the lock to the + * corresponding {@link TaskScheduler} (generally in the {@link JobTracker}). */ abstract class QueueRefresher { Modified: hadoop/mapreduce/trunk/src/test/findbugsExcludeFile.xml URL: http://svn.apache.org/viewvc/hadoop/mapreduce/trunk/src/test/findbugsExcludeFile.xml?rev=937201&r1=937200&r2=937201&view=diff ============================================================================== --- hadoop/mapreduce/trunk/src/test/findbugsExcludeFile.xml (original) +++ hadoop/mapreduce/trunk/src/test/findbugsExcludeFile.xml Fri Apr 23 09:10:42 2010 @@ -360,4 +360,24 @@ + + + + + + + + + + + +