Peter Bacsko created MAPREDUCE-7052:
---------------------------------------

             Summary: TestFixedLengthInputFormat#testFormatCompressedIn is flaky
                 Key: MAPREDUCE-7052
                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-7052
             Project: Hadoop Map/Reduce
          Issue Type: Bug
          Components: client, test
            Reporter: Peter Bacsko
            Assignee: Peter Bacsko


Sometimes the test case TestFixedLengthInputFormat#testFormatCompressedIn can 
fail with the following error:

{noformat}
java.lang.OutOfMemoryError: Requested array size exceeds VM limit
        at 
org.apache.hadoop.mapred.TestFixedLengthInputFormat.runRandomTests(TestFixedLengthInputFormat.java:322)
        at 
org.apache.hadoop.mapred.TestFixedLengthInputFormat.testFormatCompressedIn(TestFixedLengthInputFormat.java:90)
{noformat}

*Root cause:* under special circumstances, the following line can return a huge 
number:

{noformat}
          // Test a split size that is less than record len
          numSplits = (int)(fileSize/Math.floor(recordLength/2));
{noformat}

For example, let {{seed}} be 2026428718. This causes {{recordLength}} to be 1 
at iteration 19. {{Math.floor()}} returns negative Infinity, which becomes 
positve infinity after the divison. Casting it to {{int}} yields 
{{Integer.MAX_VALUE}}. Eventually we get an OOME because the test wants to 
create a huge {{InputSplit}} array.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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

Reply via email to