Zhengxi Li created MAPREDUCE-7310:
-------------------------------------

             Summary: Fix flaky test 
TestJobHistoryEventHandler.testSigTermedFunctionality
                 Key: MAPREDUCE-7310
                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-7310
             Project: Hadoop Map/Reduce
          Issue Type: Bug
            Reporter: Zhengxi Li


The test 
'{{org.apache.hadoop.mapreduce.jobhistory.TestJobHistoryEventHandler.testSigTermedFunctionality'}}
 is not idempotent and fails if run twice in the same JVM, because it pollutes 
state shared among tests. It may be good to clean this state pollution so that 
some other tests do not fail in the future due to the shared state polluted by 
this test.
h3. Details

Running `TestJobHistoryEventHandler.testSigTermedFunctionality` twice would 
result in the second run failing due to `NullPointerException`shown in the 
following:
{noformat}
 java.lang.NullPointerException
 at 
org.apache.hadoop.mapreduce.jobhistory.JobHistoryEventHandler.serviceStop(JobHistoryEventHandler.java:460)
 at org.apache.hadoop.service.AbstractService.stop(AbstractService.java:221)
 at 
org.apache.hadoop.mapreduce.jobhistory.TestJobHistoryEventHandler.testSigTermedFunctionality(TestJobHistoryEventHandler.java:933)
{noformat}
The root cause of this is that running 
'{{TestJobHistoryEventHandler.testSigTermedFunctionality'}} results in some 
entries to be added to the static '{{JobHistoryEventHandler.fileMap'}}. The 
entries in the '{{fileMap'}} are not cleaned up when the test is done, 
resulting in a NullPointerException in the second run as the stale object(added 
in the first run) in the 'fileMap' is accessed.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: mapreduce-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: mapreduce-issues-h...@hadoop.apache.org

Reply via email to