Chuan Liu created MAPREDUCE-5359:
------------------------------------

             Summary: JobHistory should not use File.separator to match 
timestamp in path
                 Key: MAPREDUCE-5359
                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-5359
             Project: Hadoop Map/Reduce
          Issue Type: Bug
    Affects Versions: 3.0.0, 2.1.0-beta
            Reporter: Chuan Liu
            Assignee: Chuan Liu
            Priority: Minor


In {{HistoryFileManager.getTimestampPartFromPath()}} method, we use the 
following regular expression to match the timestamp in a Path object. 

{code:java}
"\\d{4}" + "\\" + File.separator +  "\\d{2}" + "\\" + File.separator + "\\d{2}"
{code}

This is incorrect because Path uses backslash even for Windows path while 
File.separator is platform dependent, and is a forward slash on Windows.

This leads to failure matching the timestamp on Windows. One consequence is 
that {{addDirectoryToSerialNumberIndex()}} also failed. Later, 
{{getFileInfo()}} will fail if the job info is not in cache or intermediate 
directory.

The test case {{TestJobHistoryParsing.testScanningOldDirs()}} tests exactly the 
above scenario and fails on Windows.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to