You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-issues@hadoop.apache.org by "Devaraj K (JIRA)" <ji...@apache.org> on 2011/03/04 15:06:38 UTC

[jira] Updated: (MAPREDUCE-2317) HadoopArchives throwing NullPointerException while creating hadoop archives (.har files)

     [ https://issues.apache.org/jira/browse/MAPREDUCE-2317?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Devaraj K updated MAPREDUCE-2317:
---------------------------------

    Attachment: MAPREDUCE-2317.patch

> HadoopArchives throwing NullPointerException while creating hadoop archives (.har files)
> ----------------------------------------------------------------------------------------
>
>                 Key: MAPREDUCE-2317
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-2317
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>          Components: harchive
>    Affects Versions: 0.20.1, 0.23.0
>         Environment: windows
>            Reporter: Devaraj K
>            Priority: Minor
>         Attachments: MAPREDUCE-2317.patch
>
>
> While we are trying to run hadoop archive tool in widows using this way, it is giving the below exception.
> java org.apache.hadoop.tools.HadoopArchives -archiveName temp.har D:/test/in E:/temp
> {code:xml} 
> java.lang.NullPointerException
> 	at org.apache.hadoop.tools.HadoopArchives.writeTopLevelDirs(HadoopArchives.java:320)
> 	at org.apache.hadoop.tools.HadoopArchives.archive(HadoopArchives.java:386)
> 	at org.apache.hadoop.tools.HadoopArchives.run(HadoopArchives.java:725)
> 	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
> 	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
> 	at org.apache.hadoop.tools.HadoopArchives.main(HadoopArchives.java:739)
> {code} 
> I see the code flow to handle this feature in windows also, 
> {code:title=Path.java|borderStyle=solid}
> /** Returns the parent of a path or null if at root. */
>   public Path getParent() {
>     String path = uri.getPath();
>     int lastSlash = path.lastIndexOf('/');
>     int start = hasWindowsDrive(path, true) ? 3 : 0;
>     if ((path.length() == start) ||               // empty path
>         (lastSlash == start && path.length() == start+1)) { // at root
>       return null;
>     }
>     String parent;
>     if (lastSlash==-1) {
>       parent = CUR_DIR;
>     } else {
>       int end = hasWindowsDrive(path, true) ? 3 : 0;
>       parent = path.substring(0, lastSlash==end?end+1:lastSlash);
>     }
>     return new Path(uri.getScheme(), uri.getAuthority(), parent);
>   }
> {code} 

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira