Hadoop YARN
  1. Hadoop YARN
  2. YARN-349

Send out last-minute load averages in TaskTrackerStatus

    Details

    • Type: New Feature New Feature
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: 2.0.0-alpha
    • Fix Version/s: None
    • Component/s: nodemanager
    • Labels:
      None

      Description

      Load averages could be useful in scheduling. This patch looks to extend the existing Linux resource plugin (via /proc/loadavg file) to allow transmitting load averages of the last one minute via the TaskTrackerStatus.

      Patch is up for review, with test cases added, at: https://reviews.apache.org/r/20/

      1. mapreduce.loadaverage.r6.diff
        11 kB
        Harsh J
      2. mapreduce.loadaverage.r5.diff
        10 kB
        Harsh J
      3. mapreduce.loadaverage.r4.diff
        8 kB
        Harsh J
      4. mapreduce.loadaverage.r3.diff
        8 kB
        Harsh J

        Issue Links

          Activity

          Harsh J created issue -
          Hide
          Allen Wittenauer added a comment -

          Why not use getSystemLoadAvg() to make it portable?

          Show
          Allen Wittenauer added a comment - Why not use getSystemLoadAvg() to make it portable?
          Hide
          Harsh J added a comment -

          Hm, I didn't know about that MXBean thingy! [Just googled that method]

          I could make the change, but the Linux resource plugin is only loaded when the os is detected to be "linux", that still makes it (mostly) non-portable doesn't it?

          Is there a portable plugin?

          Show
          Harsh J added a comment - Hm, I didn't know about that MXBean thingy! [Just googled that method] I could make the change, but the Linux resource plugin is only loaded when the os is detected to be "linux", that still makes it (mostly) non-portable doesn't it? Is there a portable plugin?
          Hide
          Allen Wittenauer added a comment -

          That's sort of my point: why not promote this to be a Hadoop feature rather than something tied to a specific OS if we can support it in a generic way?

          One of the bad things about load avg is that it doesn't give you a why. In other words, a node may be totally fine running more cpu-bound tasks if the box is actually being hammered IO-wise. Since both conditions show as load.... But this would require a lot more smarts in the system and of the user. So while it makes me slightly uncomfortable to use this value, load should be 'good enough' given the current state of the system.

          Show
          Allen Wittenauer added a comment - That's sort of my point: why not promote this to be a Hadoop feature rather than something tied to a specific OS if we can support it in a generic way? One of the bad things about load avg is that it doesn't give you a why. In other words, a node may be totally fine running more cpu-bound tasks if the box is actually being hammered IO-wise. Since both conditions show as load.... But this would require a lot more smarts in the system and of the user. So while it makes me slightly uncomfortable to use this value, load should be 'good enough' given the current state of the system.
          Hide
          Harsh J added a comment -

          We could add a portable plugin, sure! Are there sufficient functions available as part of the JVM itself, for this?

          Show
          Harsh J added a comment - We could add a portable plugin, sure! Are there sufficient functions available as part of the JVM itself, for this?
          Hide
          Allen Wittenauer added a comment -

          Why does it have to be in a plug-in? Why can't it just be part of the TaskTracker in general?

          Show
          Allen Wittenauer added a comment - Why does it have to be in a plug-in? Why can't it just be part of the TaskTracker in general?
          Hide
          Harsh J added a comment -

          Plugins could help if there are better detailed, platform-specific ways of getting resource statistics?

          Show
          Harsh J added a comment - Plugins could help if there are better detailed, platform-specific ways of getting resource statistics?
          Hide
          Scott Chen added a comment -

          +1 on Allen's idea of using getSystemLoadAvg() in ResourceCalculatorPlugin.getSystemLoadAverage(). So if in the future people have added a new ResourceCalculatorPlugin for other platform, they can directly use this method.

          I think it is better to put this in ResourceCalculatorPlugin to keep similar tools in the same class.

          Show
          Scott Chen added a comment - +1 on Allen's idea of using getSystemLoadAvg() in ResourceCalculatorPlugin.getSystemLoadAverage(). So if in the future people have added a new ResourceCalculatorPlugin for other platform, they can directly use this method. I think it is better to put this in ResourceCalculatorPlugin to keep similar tools in the same class.
          Hide
          Scott Chen added a comment -

          And thank you for adding this feature, Harsh. I think this is a good thing to have

          Show
          Scott Chen added a comment - And thank you for adding this feature, Harsh. I think this is a good thing to have
          Hide
          Harsh J added a comment -

          I began to change this, but have run into a small issue. How do I store a 'double' inside a Configuration? There are only ways to set/get floats from it.

          getSystemLoadAverage() in OperatingSystemMXBean returns a double. Is it okay if we change that to a float and use it?

          Show
          Harsh J added a comment - I began to change this, but have run into a small issue. How do I store a 'double' inside a Configuration? There are only ways to set/get floats from it. getSystemLoadAverage() in OperatingSystemMXBean returns a double. Is it okay if we change that to a float and use it?
          Hide
          Scott Chen added a comment -

          Hey Harsh, I think it is OK to cast it into float.

          Show
          Scott Chen added a comment - Hey Harsh, I think it is OK to cast it into float.
          Hide
          Harsh J added a comment -

          I've updated the patch on the review board.

          Show
          Harsh J added a comment - I've updated the patch on the review board.
          Hide
          Arun C Murthy added a comment -

          Harsh, can you please put up the patch here on jira and grant license to ASF for inclusion? Thanks.

          Show
          Arun C Murthy added a comment - Harsh, can you please put up the patch here on jira and grant license to ASF for inclusion? Thanks.
          Hide
          Scott Chen added a comment -

          Hey Harsh,
          Why do we need to override getSystemLoadAverage()? The native one should also work for Linux case, right?

            @Override
            public float getSystemLoadAverage() {
              readProcLoadAverageFile();
              return loadAverage;
            }
          
          Show
          Scott Chen added a comment - Hey Harsh, Why do we need to override getSystemLoadAverage()? The native one should also work for Linux case, right? @Override public float getSystemLoadAverage() { readProcLoadAverageFile(); return loadAverage; }
          Hide
          Harsh J added a comment -

          Attaching patch here as requested by Arun.

          Patch also addresses Scott Chen's query. The Linux plugin does not do any /proc/loadavg reading anymore.

          P.s. Is it safe to also rely on OperatingSystemMXBean.getAvailableProcessors() for retrieving the number of CPUs via ResourceCalculatorPlugin.getNumProcessors()? If it is, I could add this on also.

          Show
          Harsh J added a comment - Attaching patch here as requested by Arun. Patch also addresses Scott Chen's query. The Linux plugin does not do any /proc/loadavg reading anymore. P.s. Is it safe to also rely on OperatingSystemMXBean.getAvailableProcessors() for retrieving the number of CPUs via ResourceCalculatorPlugin.getNumProcessors() ? If it is, I could add this on also.
          Harsh J made changes -
          Field Original Value New Value
          Attachment mapreduce.loadaverage.r3.diff [ 12459720 ]
          Hide
          Arun C Murthy added a comment -

          +1 the patch looks good.

          Marking it 'PA" on Harsh's behalf... I'll commit once we get an 'ok' from Hudson.

          Show
          Arun C Murthy added a comment - +1 the patch looks good. Marking it 'PA" on Harsh's behalf... I'll commit once we get an 'ok' from Hudson.
          Arun C Murthy made changes -
          Status Open [ 1 ] Patch Available [ 10002 ]
          Hide
          Hadoop QA added a comment -

          -1 overall. Here are the results of testing the latest attachment
          http://issues.apache.org/jira/secure/attachment/12459720/mapreduce.loadaverage.r3.diff
          against trunk revision 1036745.

          +1 @author. The patch does not contain any @author tags.

          +1 tests included. The patch appears to include 6 new or modified tests.

          +1 javadoc. The javadoc tool did not generate any warning messages.

          -1 javac. The patch appears to cause tar ant target to fail.

          -1 findbugs. The patch appears to introduce 1 new Findbugs (version 1.3.9) warnings.

          +1 release audit. The applied patch does not increase the total number of release audit warnings.

          -1 core tests. The patch failed these core unit tests:
          org.apache.hadoop.cli.TestMRCLI
          org.apache.hadoop.conf.TestJobConf
          org.apache.hadoop.conf.TestNoDefaultsJobConf
          org.apache.hadoop.examples.pi.math.TestSummation
          org.apache.hadoop.examples.terasort.TestTeraSort
          org.apache.hadoop.examples.TestBaileyBorweinPlouffe
          org.apache.hadoop.fs.slive.TestSlive
          org.apache.hadoop.fs.TestDFSIO
          org.apache.hadoop.fs.TestFileSystem
          org.apache.hadoop.fs.TestHarFileSystem
          org.apache.hadoop.fs.TestJHLA
          org.apache.hadoop.io.TestSequenceFileMergeProgress
          org.apache.hadoop.ipc.TestSocketFactory
          org.apache.hadoop.mapred.join.TestDatamerge
          org.apache.hadoop.mapred.lib.TestDelegatingInputFormat
          org.apache.hadoop.mapred.pipes.TestPipesAsDifferentUser
          org.apache.hadoop.mapred.pipes.TestPipes
          org.apache.hadoop.mapred.TestAdminOperationsProtocolWithServiceAuthorization
          org.apache.hadoop.mapred.TestAuditLogger
          org.apache.hadoop.mapred.TestBadRecords
          org.apache.hadoop.mapred.TestClusterMapReduceTestCase
          org.apache.hadoop.mapred.TestClusterMRNotification
          org.apache.hadoop.mapred.TestClusterStatus
          org.apache.hadoop.mapred.TestCompositeTaskTrackerInstrumentation
          org.apache.hadoop.mapred.TestCompressedEmptyMapOutputs
          org.apache.hadoop.mapred.TestControlledMapReduceJob
          org.apache.hadoop.mapred.TestDebugScriptWithLinuxTaskController
          org.apache.hadoop.mapred.TestDebugScript
          org.apache.hadoop.mapred.TestEmptyJob
          org.apache.hadoop.mapred.TestFieldSelection
          org.apache.hadoop.mapred.TestIFile
          org.apache.hadoop.mapred.TestInputPath
          org.apache.hadoop.mapred.TestIsolationRunner
          org.apache.hadoop.mapred.TestJobCleanup
          org.apache.hadoop.mapred.TestJobClient
          org.apache.hadoop.mapred.TestJobCounters
          org.apache.hadoop.mapred.TestJobDirCleanup
          org.apache.hadoop.mapred.TestJobExecutionAsDifferentUser
          org.apache.hadoop.mapred.TestJobHistory
          org.apache.hadoop.mapred.TestJobInProgressListener
          org.apache.hadoop.mapred.TestJobKillAndFail
          org.apache.hadoop.mapred.TestJobName
          org.apache.hadoop.mapred.TestJobQueueClient
          org.apache.hadoop.mapred.TestJobQueueInformation
          org.apache.hadoop.mapred.TestJobRetire
          org.apache.hadoop.mapred.TestJobStatusPersistency
          org.apache.hadoop.mapred.TestJobSysDirWithDFS
          org.apache.hadoop.mapred.TestJobTrackerInstrumentation
          org.apache.hadoop.mapred.TestJobTrackerStart
          org.apache.hadoop.mapred.TestJobTrackerXmlJsp
          org.apache.hadoop.mapred.TestJvmManager
          org.apache.hadoop.mapred.TestJvmReuse
          org.apache.hadoop.mapred.TestKeyValueTextInputFormat
          org.apache.hadoop.mapred.TestKillSubProcessesWithLinuxTaskController
          org.apache.hadoop.mapred.TestKillSubProcesses
          org.apache.hadoop.mapred.TestLazyOutput
          org.apache.hadoop.mapred.TestLimitTasksPerJobTaskScheduler
          org.apache.hadoop.mapred.TestLinuxTaskController
          org.apache.hadoop.mapred.TestLocalizationWithLinuxTaskController
          org.apache.hadoop.mapred.TestMapProgress
          org.apache.hadoop.mapred.TestMapredHeartbeat
          org.apache.hadoop.mapred.TestMapredSystemDir
          org.apache.hadoop.mapred.TestMiniMRClasspath
          org.apache.hadoop.mapred.TestMiniMRLocalFS
          org.apache.hadoop.mapred.TestMiniMRWithDFS
          org.apache.hadoop.mapred.TestMRServerPorts
          org.apache.hadoop.mapred.TestMRWithDistributedCache
          org.apache.hadoop.mapred.TestMultiFileInputFormat
          org.apache.hadoop.mapred.TestMultiFileSplit
          org.apache.hadoop.mapred.TestMultipleLevelCaching
          org.apache.hadoop.mapred.TestMultipleTextOutputFormat
          org.apache.hadoop.mapred.TestNodeHealthService
          org.apache.hadoop.mapred.TestNodeRefresh
          org.apache.hadoop.mapred.TestParallelInitialization
          org.apache.hadoop.mapred.TestQueueManagerWithJobTracker
          org.apache.hadoop.mapred.TestQueueManager
          org.apache.hadoop.mapred.TestRecoveryManager
          org.apache.hadoop.mapred.TestSetupAndCleanupFailure
          org.apache.hadoop.mapred.TestSpecialCharactersInOutputPath
          org.apache.hadoop.mapred.TestSubmitJob
          org.apache.hadoop.mapred.TestTaskFail
          org.apache.hadoop.mapred.TestTaskOutputSize
          org.apache.hadoop.mapred.TestTaskTrackerMemoryManager
          org.apache.hadoop.mapred.TestTaskTrackerSlotManagement
          org.apache.hadoop.mapred.TestTrackerReservation
          org.apache.hadoop.mapred.TestTTResourceReporting
          org.apache.hadoop.mapred.TestWebUIAuthorization
          org.apache.hadoop.mapreduce.lib.input.TestCombineFileInputFormat
          org.apache.hadoop.mapreduce.lib.input.TestDelegatingInputFormat
          org.apache.hadoop.mapreduce.lib.join.TestJoinDatamerge
          org.apache.hadoop.mapreduce.lib.join.TestJoinProperties
          org.apache.hadoop.mapreduce.lib.output.TestJobOutputCommitter
          org.apache.hadoop.mapreduce.security.TestBinaryTokenFile
          org.apache.hadoop.mapreduce.security.TestTokenCacheOldApi
          org.apache.hadoop.mapreduce.security.TestTokenCache
          org.apache.hadoop.mapreduce.security.TestUmbilicalProtocolWithJobToken
          org.apache.hadoop.mapreduce.security.token.TestDelegationTokenRenewal
          org.apache.hadoop.mapreduce.TestChild
          org.apache.hadoop.mapreduce.TestJobACLs
          org.apache.hadoop.mapreduce.TestMapReduceLazyOutput
          org.apache.hadoop.mapreduce.TestMapReduceLocal
          org.apache.hadoop.mapreduce.TestMRJobClient
          org.apache.hadoop.mapreduce.TestNoJobSetupCleanup
          org.apache.hadoop.mapreduce.TestTaskContext
          org.apache.hadoop.security.authorize.TestServiceLevelAuthorization
          org.apache.hadoop.security.TestMapredGroupMappingServiceRefresh
          org.apache.hadoop.tools.rumen.TestRumenJobTraces
          org.apache.hadoop.tools.TestCopyFiles
          org.apache.hadoop.tools.TestDistCh
          org.apache.hadoop.tools.TestHadoopArchives
          org.apache.hadoop.tools.TestHarFileSystem

          -1 contrib tests. The patch failed contrib unit tests.

          +1 system test framework. The patch passed system test framework compile.

          Test results: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/6//testReport/
          Findbugs warnings: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/6//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
          Console output: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/6//console

          This message is automatically generated.

          Show
          Hadoop QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12459720/mapreduce.loadaverage.r3.diff against trunk revision 1036745. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 6 new or modified tests. +1 javadoc. The javadoc tool did not generate any warning messages. -1 javac. The patch appears to cause tar ant target to fail. -1 findbugs. The patch appears to introduce 1 new Findbugs (version 1.3.9) warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. -1 core tests. The patch failed these core unit tests: org.apache.hadoop.cli.TestMRCLI org.apache.hadoop.conf.TestJobConf org.apache.hadoop.conf.TestNoDefaultsJobConf org.apache.hadoop.examples.pi.math.TestSummation org.apache.hadoop.examples.terasort.TestTeraSort org.apache.hadoop.examples.TestBaileyBorweinPlouffe org.apache.hadoop.fs.slive.TestSlive org.apache.hadoop.fs.TestDFSIO org.apache.hadoop.fs.TestFileSystem org.apache.hadoop.fs.TestHarFileSystem org.apache.hadoop.fs.TestJHLA org.apache.hadoop.io.TestSequenceFileMergeProgress org.apache.hadoop.ipc.TestSocketFactory org.apache.hadoop.mapred.join.TestDatamerge org.apache.hadoop.mapred.lib.TestDelegatingInputFormat org.apache.hadoop.mapred.pipes.TestPipesAsDifferentUser org.apache.hadoop.mapred.pipes.TestPipes org.apache.hadoop.mapred.TestAdminOperationsProtocolWithServiceAuthorization org.apache.hadoop.mapred.TestAuditLogger org.apache.hadoop.mapred.TestBadRecords org.apache.hadoop.mapred.TestClusterMapReduceTestCase org.apache.hadoop.mapred.TestClusterMRNotification org.apache.hadoop.mapred.TestClusterStatus org.apache.hadoop.mapred.TestCompositeTaskTrackerInstrumentation org.apache.hadoop.mapred.TestCompressedEmptyMapOutputs org.apache.hadoop.mapred.TestControlledMapReduceJob org.apache.hadoop.mapred.TestDebugScriptWithLinuxTaskController org.apache.hadoop.mapred.TestDebugScript org.apache.hadoop.mapred.TestEmptyJob org.apache.hadoop.mapred.TestFieldSelection org.apache.hadoop.mapred.TestIFile org.apache.hadoop.mapred.TestInputPath org.apache.hadoop.mapred.TestIsolationRunner org.apache.hadoop.mapred.TestJobCleanup org.apache.hadoop.mapred.TestJobClient org.apache.hadoop.mapred.TestJobCounters org.apache.hadoop.mapred.TestJobDirCleanup org.apache.hadoop.mapred.TestJobExecutionAsDifferentUser org.apache.hadoop.mapred.TestJobHistory org.apache.hadoop.mapred.TestJobInProgressListener org.apache.hadoop.mapred.TestJobKillAndFail org.apache.hadoop.mapred.TestJobName org.apache.hadoop.mapred.TestJobQueueClient org.apache.hadoop.mapred.TestJobQueueInformation org.apache.hadoop.mapred.TestJobRetire org.apache.hadoop.mapred.TestJobStatusPersistency org.apache.hadoop.mapred.TestJobSysDirWithDFS org.apache.hadoop.mapred.TestJobTrackerInstrumentation org.apache.hadoop.mapred.TestJobTrackerStart org.apache.hadoop.mapred.TestJobTrackerXmlJsp org.apache.hadoop.mapred.TestJvmManager org.apache.hadoop.mapred.TestJvmReuse org.apache.hadoop.mapred.TestKeyValueTextInputFormat org.apache.hadoop.mapred.TestKillSubProcessesWithLinuxTaskController org.apache.hadoop.mapred.TestKillSubProcesses org.apache.hadoop.mapred.TestLazyOutput org.apache.hadoop.mapred.TestLimitTasksPerJobTaskScheduler org.apache.hadoop.mapred.TestLinuxTaskController org.apache.hadoop.mapred.TestLocalizationWithLinuxTaskController org.apache.hadoop.mapred.TestMapProgress org.apache.hadoop.mapred.TestMapredHeartbeat org.apache.hadoop.mapred.TestMapredSystemDir org.apache.hadoop.mapred.TestMiniMRClasspath org.apache.hadoop.mapred.TestMiniMRLocalFS org.apache.hadoop.mapred.TestMiniMRWithDFS org.apache.hadoop.mapred.TestMRServerPorts org.apache.hadoop.mapred.TestMRWithDistributedCache org.apache.hadoop.mapred.TestMultiFileInputFormat org.apache.hadoop.mapred.TestMultiFileSplit org.apache.hadoop.mapred.TestMultipleLevelCaching org.apache.hadoop.mapred.TestMultipleTextOutputFormat org.apache.hadoop.mapred.TestNodeHealthService org.apache.hadoop.mapred.TestNodeRefresh org.apache.hadoop.mapred.TestParallelInitialization org.apache.hadoop.mapred.TestQueueManagerWithJobTracker org.apache.hadoop.mapred.TestQueueManager org.apache.hadoop.mapred.TestRecoveryManager org.apache.hadoop.mapred.TestSetupAndCleanupFailure org.apache.hadoop.mapred.TestSpecialCharactersInOutputPath org.apache.hadoop.mapred.TestSubmitJob org.apache.hadoop.mapred.TestTaskFail org.apache.hadoop.mapred.TestTaskOutputSize org.apache.hadoop.mapred.TestTaskTrackerMemoryManager org.apache.hadoop.mapred.TestTaskTrackerSlotManagement org.apache.hadoop.mapred.TestTrackerReservation org.apache.hadoop.mapred.TestTTResourceReporting org.apache.hadoop.mapred.TestWebUIAuthorization org.apache.hadoop.mapreduce.lib.input.TestCombineFileInputFormat org.apache.hadoop.mapreduce.lib.input.TestDelegatingInputFormat org.apache.hadoop.mapreduce.lib.join.TestJoinDatamerge org.apache.hadoop.mapreduce.lib.join.TestJoinProperties org.apache.hadoop.mapreduce.lib.output.TestJobOutputCommitter org.apache.hadoop.mapreduce.security.TestBinaryTokenFile org.apache.hadoop.mapreduce.security.TestTokenCacheOldApi org.apache.hadoop.mapreduce.security.TestTokenCache org.apache.hadoop.mapreduce.security.TestUmbilicalProtocolWithJobToken org.apache.hadoop.mapreduce.security.token.TestDelegationTokenRenewal org.apache.hadoop.mapreduce.TestChild org.apache.hadoop.mapreduce.TestJobACLs org.apache.hadoop.mapreduce.TestMapReduceLazyOutput org.apache.hadoop.mapreduce.TestMapReduceLocal org.apache.hadoop.mapreduce.TestMRJobClient org.apache.hadoop.mapreduce.TestNoJobSetupCleanup org.apache.hadoop.mapreduce.TestTaskContext org.apache.hadoop.security.authorize.TestServiceLevelAuthorization org.apache.hadoop.security.TestMapredGroupMappingServiceRefresh org.apache.hadoop.tools.rumen.TestRumenJobTraces org.apache.hadoop.tools.TestCopyFiles org.apache.hadoop.tools.TestDistCh org.apache.hadoop.tools.TestHadoopArchives org.apache.hadoop.tools.TestHarFileSystem -1 contrib tests. The patch failed contrib unit tests. +1 system test framework. The patch passed system test framework compile. Test results: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/6//testReport/ Findbugs warnings: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/6//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html Console output: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/6//console This message is automatically generated.
          Hide
          Nigel Daley added a comment -

          Sorry for the long precommit comment by Hadoop QA. I'm trying to get this running on MR again. Lots of tests failing. Looks like trunk wasn't properly updated after 0.22 branching. I still see references to 0.22 in the ivy/libraries.properties file on trunk.

          Show
          Nigel Daley added a comment - Sorry for the long precommit comment by Hadoop QA. I'm trying to get this running on MR again. Lots of tests failing. Looks like trunk wasn't properly updated after 0.22 branching. I still see references to 0.22 in the ivy/libraries.properties file on trunk.
          Hide
          Harsh J added a comment -

          Updating patch to fix a findbugs BX warning on ResourceCalculatorPlugin:46

          Show
          Harsh J added a comment - Updating patch to fix a findbugs BX warning on ResourceCalculatorPlugin:46
          Harsh J made changes -
          Attachment mapreduce.loadaverage.r4.diff [ 12460091 ]
          Hide
          Hadoop QA added a comment -

          -1 overall. Here are the results of testing the latest attachment
          http://issues.apache.org/jira/secure/attachment/12460091/mapreduce.loadaverage.r4.diff
          against trunk revision 1038357.

          +1 @author. The patch does not contain any @author tags.

          +1 tests included. The patch appears to include 6 new or modified tests.

          +1 javadoc. The javadoc tool did not generate any warning messages.

          +1 javac. The applied patch does not increase the total number of javac compiler warnings.

          +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings.

          +1 release audit. The applied patch does not increase the total number of release audit warnings.

          -1 core tests. The patch failed these core unit tests:
          org.apache.hadoop.mapred.TestControlledMapReduceJob
          org.apache.hadoop.mapred.TestTTResourceReporting
          org.apache.hadoop.mapreduce.security.TestUmbilicalProtocolWithJobToken
          org.apache.hadoop.tools.rumen.TestRumenJobTraces
          org.apache.hadoop.tools.TestHarFileSystem

          -1 contrib tests. The patch failed contrib unit tests.

          +1 system test framework. The patch passed system test framework compile.

          Test results: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/7//testReport/
          Findbugs warnings: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/7//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
          Console output: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/7//console

          This message is automatically generated.

          Show
          Hadoop QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12460091/mapreduce.loadaverage.r4.diff against trunk revision 1038357. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 6 new or modified tests. +1 javadoc. The javadoc tool did not generate any warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. -1 core tests. The patch failed these core unit tests: org.apache.hadoop.mapred.TestControlledMapReduceJob org.apache.hadoop.mapred.TestTTResourceReporting org.apache.hadoop.mapreduce.security.TestUmbilicalProtocolWithJobToken org.apache.hadoop.tools.rumen.TestRumenJobTraces org.apache.hadoop.tools.TestHarFileSystem -1 contrib tests. The patch failed contrib unit tests. +1 system test framework. The patch passed system test framework compile. Test results: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/7//testReport/ Findbugs warnings: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/7//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html Console output: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/7//console This message is automatically generated.
          Hide
          Harsh J added a comment -

          Attaching a new patch that should fix the test case fail.

          Show
          Harsh J added a comment - Attaching a new patch that should fix the test case fail.
          Harsh J made changes -
          Attachment mapreduce.loadaverage.r5.diff [ 12466938 ]
          Hide
          Harsh J added a comment -

          Fixing the cause that led to a failing core test. [New patch upped -- r5]

          Show
          Harsh J added a comment - Fixing the cause that led to a failing core test. [New patch upped -- r5]
          Harsh J made changes -
          Status Patch Available [ 10002 ] In Progress [ 3 ]
          Hide
          Harsh J added a comment -

          This should pass the tests. Had not added the TaskTracker.java diff previously, oops.

          Show
          Harsh J added a comment - This should pass the tests. Had not added the TaskTracker.java diff previously, oops.
          Harsh J made changes -
          Status In Progress [ 3 ] Patch Available [ 10002 ]
          Hide
          Harsh J added a comment -

          Running 'ant test-patch' passes here.

               [exec] +1 overall.  
               [exec] 
               [exec]     +1 @author.  The patch does not contain any @author tags.
               [exec] 
               [exec]     +1 tests included.  The patch appears to include 6 new or modified tests.
               [exec] 
               [exec]     +1 javadoc.  The javadoc tool did not generate any warning messages.
               [exec] 
               [exec]     +1 javac.  The applied patch does not increase the total number of javac compiler warnings.
               [exec] 
               [exec]     +1 findbugs.  The patch does not introduce any new Findbugs (version 1.3.9) warnings.
               [exec] 
               [exec]     +1 release audit.  The applied patch does not increase the total number of release audit warnings.
               [exec] 
               [exec]     +1 system test framework.  The patch passed system test framework compile.
               [exec] 
               [exec] 
               [exec] 
               [exec] 
               [exec] ======================================================================
               [exec] ======================================================================
               [exec]     Finished build.
               [exec] ======================================================================
               [exec] ======================================================================
               [exec] 
               [exec] 
          
          BUILD SUCCESSFUL
          Total time: 31 minutes 51 seconds
          
          Show
          Harsh J added a comment - Running 'ant test-patch' passes here. [exec] +1 overall. [exec] [exec] +1 @author. The patch does not contain any @author tags. [exec] [exec] +1 tests included. The patch appears to include 6 new or modified tests. [exec] [exec] +1 javadoc. The javadoc tool did not generate any warning messages. [exec] [exec] +1 javac. The applied patch does not increase the total number of javac compiler warnings. [exec] [exec] +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings. [exec] [exec] +1 release audit. The applied patch does not increase the total number of release audit warnings. [exec] [exec] +1 system test framework. The patch passed system test framework compile. [exec] [exec] [exec] [exec] [exec] ====================================================================== [exec] ====================================================================== [exec] Finished build. [exec] ====================================================================== [exec] ====================================================================== [exec] [exec] BUILD SUCCESSFUL Total time: 31 minutes 51 seconds
          Hide
          Harsh J added a comment -

          Setting to BLOCKER as per Nigel's mail.

          Show
          Harsh J added a comment - Setting to BLOCKER as per Nigel's mail.
          Harsh J made changes -
          Priority Minor [ 4 ] Blocker [ 1 ]
          Hide
          Hadoop QA added a comment -

          -1 overall. Here are the results of testing the latest attachment
          http://issues.apache.org/jira/secure/attachment/12466938/mapreduce.loadaverage.r5.diff
          against trunk revision 1074251.

          +1 @author. The patch does not contain any @author tags.

          +1 tests included. The patch appears to include 6 new or modified tests.

          +1 javadoc. The javadoc tool did not generate any warning messages.

          +1 javac. The applied patch does not increase the total number of javac compiler warnings.

          +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings.

          +1 release audit. The applied patch does not increase the total number of release audit warnings.

          +1 core tests. The patch passed core unit tests.

          -1 contrib tests. The patch failed contrib unit tests.

          +1 system test framework. The patch passed system test framework compile.

          Test results: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/54//testReport/
          Findbugs warnings: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/54//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
          Console output: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/54//console

          This message is automatically generated.

          Show
          Hadoop QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12466938/mapreduce.loadaverage.r5.diff against trunk revision 1074251. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 6 new or modified tests. +1 javadoc. The javadoc tool did not generate any warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. +1 core tests. The patch passed core unit tests. -1 contrib tests. The patch failed contrib unit tests. +1 system test framework. The patch passed system test framework compile. Test results: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/54//testReport/ Findbugs warnings: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/54//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html Console output: https://hudson.apache.org/hudson/job/PreCommit-MAPREDUCE-Build/54//console This message is automatically generated.
          Hide
          Nigel Daley added a comment -

          This isn't a blocker for 0.22. Removing from 0.22.

          Show
          Nigel Daley added a comment - This isn't a blocker for 0.22. Removing from 0.22.
          Nigel Daley made changes -
          Fix Version/s 0.22.0 [ 12314184 ]
          Priority Blocker [ 1 ] Critical [ 2 ]
          Harsh J made changes -
          Issue Type Improvement [ 4 ] New Feature [ 2 ]
          Fix Version/s 0.23.0 [ 12315570 ]
          Hide
          Harsh J added a comment -

          Rebased patch for trunk (no changes).

          Is there still demand for this addition?

          Show
          Harsh J added a comment - Rebased patch for trunk (no changes). Is there still demand for this addition?
          Harsh J made changes -
          Attachment mapreduce.loadaverage.r6.diff [ 12482150 ]
          Hide
          Hadoop QA added a comment -

          -1 overall. Here are the results of testing the latest attachment
          http://issues.apache.org/jira/secure/attachment/12482150/mapreduce.loadaverage.r6.diff
          against trunk revision 1134180.

          +1 @author. The patch does not contain any @author tags.

          +1 tests included. The patch appears to include 6 new or modified tests.

          +1 javadoc. The javadoc tool did not generate any warning messages.

          +1 javac. The applied patch does not increase the total number of javac compiler warnings.

          +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings.

          +1 release audit. The applied patch does not increase the total number of release audit warnings.

          -1 core tests. The patch failed these core unit tests:
          org.apache.hadoop.cli.TestMRCLI
          org.apache.hadoop.conf.TestNoDefaultsJobConf
          org.apache.hadoop.examples.terasort.TestTeraSort
          org.apache.hadoop.fs.TestDFSIO
          org.apache.hadoop.fs.TestFileSystem
          org.apache.hadoop.ipc.TestSocketFactory
          org.apache.hadoop.mapred.join.TestDatamerge
          org.apache.hadoop.mapred.lib.TestDelegatingInputFormat
          org.apache.hadoop.mapred.pipes.TestPipes
          org.apache.hadoop.mapred.TestBadRecords
          org.apache.hadoop.mapred.TestClusterMapReduceTestCase
          org.apache.hadoop.mapred.TestCommandLineJobSubmission
          org.apache.hadoop.mapred.TestCompressedEmptyMapOutputs
          org.apache.hadoop.mapred.TestControlledMapReduceJob
          org.apache.hadoop.mapred.TestFileInputFormat
          org.apache.hadoop.mapred.TestJobClient
          org.apache.hadoop.mapred.TestJobDirCleanup
          org.apache.hadoop.mapred.TestJobHistory
          org.apache.hadoop.mapred.TestJobName
          org.apache.hadoop.mapred.TestJobQueueInformation
          org.apache.hadoop.mapred.TestJobStatusPersistency
          org.apache.hadoop.mapred.TestJobSysDirWithDFS
          org.apache.hadoop.mapred.TestJobTrackerXmlJsp
          org.apache.hadoop.mapred.TestLazyOutput
          org.apache.hadoop.mapred.TestMapredHeartbeat
          org.apache.hadoop.mapred.TestMapredSystemDir
          org.apache.hadoop.mapred.TestMiniMRChildTask
          org.apache.hadoop.mapred.TestMiniMRClasspath
          org.apache.hadoop.mapred.TestMiniMRDFSCaching
          org.apache.hadoop.mapred.TestMiniMRDFSSort
          org.apache.hadoop.mapred.TestMiniMRWithDFSWithDistinctUsers
          org.apache.hadoop.mapred.TestMiniMRWithDFS
          org.apache.hadoop.mapred.TestMultipleLevelCaching
          org.apache.hadoop.mapred.TestNodeRefresh
          org.apache.hadoop.mapred.TestRecoveryManager
          org.apache.hadoop.mapred.TestReduceFetchFromPartialMem
          org.apache.hadoop.mapred.TestReduceFetch
          org.apache.hadoop.mapred.TestSetupAndCleanupFailure
          org.apache.hadoop.mapred.TestSeveral
          org.apache.hadoop.mapred.TestSpecialCharactersInOutputPath
          org.apache.hadoop.mapred.TestSubmitJob
          org.apache.hadoop.mapred.TestTaskFail
          org.apache.hadoop.mapred.TestWebUIAuthorization
          org.apache.hadoop.mapreduce.lib.input.TestCombineFileInputFormat
          org.apache.hadoop.mapreduce.lib.input.TestDelegatingInputFormat
          org.apache.hadoop.mapreduce.lib.join.TestJoinDatamerge
          org.apache.hadoop.mapreduce.lib.join.TestJoinProperties
          org.apache.hadoop.mapreduce.security.TestBinaryTokenFile
          org.apache.hadoop.mapreduce.security.TestTokenCacheOldApi
          org.apache.hadoop.mapreduce.security.TestTokenCache
          org.apache.hadoop.mapreduce.TestMapReduceLazyOutput
          org.apache.hadoop.mapreduce.TestMRJobClient
          org.apache.hadoop.security.authorize.TestServiceLevelAuthorization
          org.apache.hadoop.security.TestMapredGroupMappingServiceRefresh
          org.apache.hadoop.tools.TestCopyFiles
          org.apache.hadoop.tools.TestDistCh
          org.apache.hadoop.tools.TestHadoopArchives
          org.apache.hadoop.tools.TestHarFileSystem

          -1 contrib tests. The patch failed contrib unit tests.

          +1 system test framework. The patch passed system test framework compile.

          Test results: https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/375//testReport/
          Findbugs warnings: https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/375//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
          Console output: https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/375//console

          This message is automatically generated.

          Show
          Hadoop QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12482150/mapreduce.loadaverage.r6.diff against trunk revision 1134180. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 6 new or modified tests. +1 javadoc. The javadoc tool did not generate any warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. -1 core tests. The patch failed these core unit tests: org.apache.hadoop.cli.TestMRCLI org.apache.hadoop.conf.TestNoDefaultsJobConf org.apache.hadoop.examples.terasort.TestTeraSort org.apache.hadoop.fs.TestDFSIO org.apache.hadoop.fs.TestFileSystem org.apache.hadoop.ipc.TestSocketFactory org.apache.hadoop.mapred.join.TestDatamerge org.apache.hadoop.mapred.lib.TestDelegatingInputFormat org.apache.hadoop.mapred.pipes.TestPipes org.apache.hadoop.mapred.TestBadRecords org.apache.hadoop.mapred.TestClusterMapReduceTestCase org.apache.hadoop.mapred.TestCommandLineJobSubmission org.apache.hadoop.mapred.TestCompressedEmptyMapOutputs org.apache.hadoop.mapred.TestControlledMapReduceJob org.apache.hadoop.mapred.TestFileInputFormat org.apache.hadoop.mapred.TestJobClient org.apache.hadoop.mapred.TestJobDirCleanup org.apache.hadoop.mapred.TestJobHistory org.apache.hadoop.mapred.TestJobName org.apache.hadoop.mapred.TestJobQueueInformation org.apache.hadoop.mapred.TestJobStatusPersistency org.apache.hadoop.mapred.TestJobSysDirWithDFS org.apache.hadoop.mapred.TestJobTrackerXmlJsp org.apache.hadoop.mapred.TestLazyOutput org.apache.hadoop.mapred.TestMapredHeartbeat org.apache.hadoop.mapred.TestMapredSystemDir org.apache.hadoop.mapred.TestMiniMRChildTask org.apache.hadoop.mapred.TestMiniMRClasspath org.apache.hadoop.mapred.TestMiniMRDFSCaching org.apache.hadoop.mapred.TestMiniMRDFSSort org.apache.hadoop.mapred.TestMiniMRWithDFSWithDistinctUsers org.apache.hadoop.mapred.TestMiniMRWithDFS org.apache.hadoop.mapred.TestMultipleLevelCaching org.apache.hadoop.mapred.TestNodeRefresh org.apache.hadoop.mapred.TestRecoveryManager org.apache.hadoop.mapred.TestReduceFetchFromPartialMem org.apache.hadoop.mapred.TestReduceFetch org.apache.hadoop.mapred.TestSetupAndCleanupFailure org.apache.hadoop.mapred.TestSeveral org.apache.hadoop.mapred.TestSpecialCharactersInOutputPath org.apache.hadoop.mapred.TestSubmitJob org.apache.hadoop.mapred.TestTaskFail org.apache.hadoop.mapred.TestWebUIAuthorization org.apache.hadoop.mapreduce.lib.input.TestCombineFileInputFormat org.apache.hadoop.mapreduce.lib.input.TestDelegatingInputFormat org.apache.hadoop.mapreduce.lib.join.TestJoinDatamerge org.apache.hadoop.mapreduce.lib.join.TestJoinProperties org.apache.hadoop.mapreduce.security.TestBinaryTokenFile org.apache.hadoop.mapreduce.security.TestTokenCacheOldApi org.apache.hadoop.mapreduce.security.TestTokenCache org.apache.hadoop.mapreduce.TestMapReduceLazyOutput org.apache.hadoop.mapreduce.TestMRJobClient org.apache.hadoop.security.authorize.TestServiceLevelAuthorization org.apache.hadoop.security.TestMapredGroupMappingServiceRefresh org.apache.hadoop.tools.TestCopyFiles org.apache.hadoop.tools.TestDistCh org.apache.hadoop.tools.TestHadoopArchives org.apache.hadoop.tools.TestHarFileSystem -1 contrib tests. The patch failed contrib unit tests. +1 system test framework. The patch passed system test framework compile. Test results: https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/375//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/375//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html Console output: https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/375//console This message is automatically generated.
          Hide
          Harsh J added a comment -

          Well this is strange… Went through about 15 of the failed list, but they do not appear related to my TT status patch at all.

          Show
          Harsh J added a comment - Well this is strange… Went through about 15 of the failed list, but they do not appear related to my TT status patch at all.
          Hide
          Harsh J added a comment -

          (Changed env/tags to make it look non-linux-specific since it would work across all platforms).

          Show
          Harsh J added a comment - (Changed env/tags to make it look non-linux-specific since it would work across all platforms).
          Harsh J made changes -
          Tags load average, tasktracker, linux load average, tasktracker
          Environment GNU/Linux
          Hide
          Harsh J added a comment -

          If there's still interest for this, I can update it up for the hadoop-yarn framework (ContainersMonitor).

          Show
          Harsh J added a comment - If there's still interest for this, I can update it up for the hadoop-yarn framework (ContainersMonitor).
          Hide
          Arun C Murthy added a comment -

          Yes please, love to have it for NodeManager. Thanks!

          Show
          Arun C Murthy added a comment - Yes please, love to have it for NodeManager. Thanks!
          Arun C Murthy made changes -
          Status Patch Available [ 10002 ] Open [ 1 ]
          Arun C Murthy made changes -
          Fix Version/s 0.24.0 [ 12317654 ]
          Fix Version/s 0.23.0 [ 12315570 ]
          Hide
          Harsh J added a comment -

          I took a look at NodeManager parts, and it appears that the plugin is only used for resource view use? How does the resource plugin come into play when it comes to the resource-based scheduler?

          Show
          Harsh J added a comment - I took a look at NodeManager parts, and it appears that the plugin is only used for resource view use? How does the resource plugin come into play when it comes to the resource-based scheduler?
          Hide
          Ambud Sharma added a comment -

          Hi,
          I am wondering if keeping that(systemaverageload) as a separate RPC call used/made when need would make more sense?
          -Ambud

          Show
          Ambud Sharma added a comment - Hi, I am wondering if keeping that(systemaverageload) as a separate RPC call used/made when need would make more sense? -Ambud
          Hide
          Harsh J added a comment -

          Ambud,

          What gain do you see in disconnecting it off of other stats (CPU/Memory/etc.) in the regular heartbeats?

          Show
          Harsh J added a comment - Ambud, What gain do you see in disconnecting it off of other stats (CPU/Memory/etc.) in the regular heartbeats?
          Arun C Murthy made changes -
          Priority Critical [ 2 ] Major [ 3 ]
          Harsh J made changes -
          Project Hadoop Map/Reduce [ 12310941 ] Hadoop YARN [ 12313722 ]
          Key MAPREDUCE-2170 YARN-349
          Release Note Add support for transmitting previous-minute load averages in TaskTrackerStatus
          Affects Version/s 2.0.0-alpha [ 12323271 ]
          Affects Version/s 0.22.0 [ 12314184 ]
          Fix Version/s 0.24.0 [ 12317654 ]
          Component/s nodemanager [ 12319323 ]
          Component/s jobtracker [ 12312907 ]
          Tags load average, tasktracker
          Harsh J made changes -
          Comment [ I will return to the office on January 17th. For urgent matters,
          please contact Aparna or Philip L. The week between Christmas and New
          Years', your best bet is Chris L.

          Thanks,

          -- Philip
          ]
          Allen Wittenauer made changes -
          Link This issue duplicates MAPREDUCE-1438 [ MAPREDUCE-1438 ]
          Transition Time In Source Status Execution Times Last Executer Last Execution Date
          Open Open Patch Available Patch Available
          15d 21h 39m 1 Arun C Murthy 17/Nov/10 17:44
          Patch Available Patch Available In Progress In Progress
          38d 22h 28m 1 Harsh J 26/Dec/10 16:12
          In Progress In Progress Patch Available Patch Available
          38s 1 Harsh J 26/Dec/10 16:13
          Patch Available Patch Available Open Open
          254d 15h 57m 1 Arun C Murthy 07/Sep/11 09:11

            People

            • Assignee:
              Harsh J
              Reporter:
              Harsh J
            • Votes:
              0 Vote for this issue
              Watchers:
              12 Start watching this issue

              Dates

              • Created:
                Updated:

                Time Tracking

                Estimated:
                Original Estimate - 20m
                20m
                Remaining:
                Remaining Estimate - 20m
                20m
                Logged:
                Time Spent - Not Specified
                Not Specified

                  Development