Most likely that machine is affected by some firewall somewhere that
prevents traffic on port 50075. The no route to host is a strong indicator,
particularly if the Datanote registered with the namenode.

On Tue, Apr 21, 2009 at 4:18 PM, Philip Zeyliger <phi...@cloudera.com>wrote:

> Very naively looking at the code, the exception you see is happening in the
> write path, on the way to sending a copy of your data to a second data
> node.  One data node is pipelining the data to another, and that connection
> is failing.  The fact that "DatanodeRegistration" is mentioned in the
> exception is a red herring: that's merely the text that the datanode prints
> for every exception that's thrown during a server response.  It's
> frustrating that the exception message doesn't actually mention what host
> it's trying to connect to.
>
> Some quick avenues for debugging:
>
> It sounds like you've identified a specific data node that isn't behaving.
> Is the exception that you've pasted in coming from that DataNode or from
> another?
>
> Can you tell if the DataNode is listening on the right ports?  You might
> try
> "sudo netstat -pl | grep java" and check to see that the DataNode is
> listening on 50010 (I believe that's the default).
>
> You might also try strace on the process that's showing the "no route to
> host" error, to catch the system call fail.
>
> You could, of course, instrument the code to do a try/catch around the
> relevant block in DataNode.java, to find out what host/port the connection
> is failing on.
>



-- 
Alpha Chapters of my book on Hadoop are available
http://www.apress.com/book/view/9781430219422

Reply via email to