hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Steve Loughran (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HDFS-155) StatusHttpServer is failing if trying to use hadoop as a standalone jar
Date Fri, 22 Jan 2010 21:22:22 GMT

    [ https://issues.apache.org/jira/browse/HDFS-155?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12803881#action_12803881

Steve Loughran commented on HDFS-155:

This is a very old defect. Has anyone seen it for a while?

The webapp location, {{getWebappsPath()}} is now in {{org.apache.hadoop.http.HttpServer}}.
I would suspect the problem might be in how Jetty's {{org.mortbay.jetty.webapp.WebAppContext.setWar())}}
takes either a file path or a URL; if it gets confused I could see this problem happening.

> StatusHttpServer is failing if trying to use hadoop as a standalone jar
> -----------------------------------------------------------------------
>                 Key: HDFS-155
>                 URL: https://issues.apache.org/jira/browse/HDFS-155
>             Project: Hadoop HDFS
>          Issue Type: Bug
>         Environment: WinXP
>            Reporter: Paul Malolepsy
>            Assignee: Sameer Paranjpye
>            Priority: Minor
> I just recently tried to upgrade from hadoop .2 and I am getting an error during the
startup of StatusHttpServer.  I did set my hadoop.log.dir, but there are still errros.  Here
is my stack below.
> java.io.FileNotFoundException: E:\projects\marzen\file:\E:\projects\marzen\web\WEB-INF\lib\hadoop.jar!\webapps\datanode
> 	at org.mortbay.jetty.servlet.WebApplicationContext.resolveWebApp(WebApplicationContext.java:266)
> 	at org.mortbay.jetty.servlet.WebApplicationContext.doStart(WebApplicationContext.java:449)
> 	at org.mortbay.util.Container.start(Container.java:72)
> 	at org.mortbay.http.HttpServer.doStart(HttpServer.java:753)
> 	at org.mortbay.util.Container.start(Container.java:72)
> 	at org.apache.hadoop.mapred.StatusHttpServer.start(StatusHttpServer.java:177)
> 	at org.apache.hadoop.dfs.DataNode.<init>(DataNode.java:167)
> 	at org.apache.hadoop.dfs.DataNode.makeInstance(DataNode.java:1069)
> 	at org.apache.hadoop.dfs.DataNode.run(DataNode.java:1003)
> 	...rest of stack removed...
> The root of the issues seems to be in StatusHttpServer.getWebAppsPath().  Its possible
that I am using hadoop differently than most people (as a standalone jar in another web app),
but I'm not sure how this function could ever work if you were just using hadoop packaged
as a standalone jar.  Its trying to get the webapps path using this line: 
> URL url = StatusHttpServer.class.getClassLoader().getResource("webapps");
> Which is returning the following path.  This is a path within the hadoop jar:   file:\E:\projects\marzen\web\WEB-INF\lib\hadoop.jar!\webapps
> It then tries to return the canonical path of that wich returns this path:  E:\projects\marzen\file:\E:\projects\marzen\web\WEB-INF\lib\hadoop.jar!\webapps
> I don't even think that is a valid path, and the Jetty server certainly doesn't like
it.  Is there something I'm doing wrong?  Is it possible nobody else is using hadoop as a
standalone jar?  Is this a windows specific bug?  

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message