You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-commits@hadoop.apache.org by jg...@apache.org on 2010/09/11 00:41:42 UTC
svn commit: r996012 - in /hadoop/hdfs/trunk: CHANGES.txt
src/java/org/apache/hadoop/hdfs/server/datanode/DataNode.java
src/java/org/apache/hadoop/hdfs/server/datanode/DatanodeJspHelper.java
src/java/org/apache/hadoop/hdfs/server/namenode/StreamFile.java
Author: jghoman
Date: Fri Sep 10 22:41:42 2010
New Revision: 996012
URL: http://svn.apache.org/viewvc?rev=996012&view=rev
Log:
HDFS-1357. HFTP traffic served by DataNode shouldn't use service port on NameNode. Contributed by Kan Zhang.
Modified:
hadoop/hdfs/trunk/CHANGES.txt
hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/DataNode.java
hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/DatanodeJspHelper.java
hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/namenode/StreamFile.java
Modified: hadoop/hdfs/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/hdfs/trunk/CHANGES.txt?rev=996012&r1=996011&r2=996012&view=diff
==============================================================================
--- hadoop/hdfs/trunk/CHANGES.txt (original)
+++ hadoop/hdfs/trunk/CHANGES.txt Fri Sep 10 22:41:42 2010
@@ -252,6 +252,9 @@ Trunk (unreleased changes)
HDFS-1310. The ClientDatanodeProtocol proxy should be stopped in
DFSInputStream.readBlockLength(..). (sam rash via szetszwo)
+ HDFS-1357. HFTP traffic served by DataNode shouldn't use service port
+ on NameNode. (Kan Zhang via jghoman)
+
Release 0.21.0 - Unreleased
INCOMPATIBLE CHANGES
Modified: hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/DataNode.java
URL: http://svn.apache.org/viewvc/hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/DataNode.java?rev=996012&r1=996011&r2=996012&view=diff
==============================================================================
--- hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/DataNode.java (original)
+++ hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/DataNode.java Fri Sep 10 22:41:42 2010
@@ -217,6 +217,7 @@ public class DataNode extends Configured
private HttpServer infoServer = null;
DataNodeMetrics myMetrics;
private InetSocketAddress nameNodeAddr;
+ private InetSocketAddress nameNodeAddrForClient;
private InetSocketAddress selfAddr;
private static DataNode datanodeObject = null;
private Thread dataNodeThread = null;
@@ -314,6 +315,7 @@ public class DataNode extends Configured
conf.get("dfs.datanode.dns.nameserver","default"));
}
this.nameNodeAddr = NameNode.getServiceAddress(conf, true);
+ this.nameNodeAddrForClient = NameNode.getAddress(conf);
this.socketTimeout = conf.getInt(DFSConfigKeys.DFS_CLIENT_SOCKET_TIMEOUT_KEY,
HdfsConstants.READ_TIMEOUT);
@@ -585,6 +587,10 @@ public class DataNode extends Configured
return nameNodeAddr;
}
+ public InetSocketAddress getNameNodeAddrForClient() {
+ return nameNodeAddrForClient;
+ }
+
public InetSocketAddress getSelfAddr() {
return selfAddr;
}
Modified: hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/DatanodeJspHelper.java
URL: http://svn.apache.org/viewvc/hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/DatanodeJspHelper.java?rev=996012&r1=996011&r2=996012&view=diff
==============================================================================
--- hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/DatanodeJspHelper.java (original)
+++ hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/DatanodeJspHelper.java Fri Sep 10 22:41:42 2010
@@ -91,7 +91,7 @@ public class DatanodeJspHelper {
if (namenodeInfoPortStr != null)
namenodeInfoPort = Integer.parseInt(namenodeInfoPortStr);
- DFSClient dfs = getDFSClient(ugi, datanode.getNameNodeAddr(), conf);
+ DFSClient dfs = getDFSClient(ugi, datanode.getNameNodeAddrForClient(), conf);
String target = dir;
final HdfsFileStatus targetStatus = dfs.getFileInfo(target);
if (targetStatus == null) { // not exists
@@ -193,7 +193,7 @@ public class DatanodeJspHelper {
JspHelper.addTableFooter(out);
}
}
- String namenodeHost = datanode.getNameNodeAddr().getHostName();
+ String namenodeHost = datanode.getNameNodeAddrForClient().getHostName();
out.print("<br><a href=\"http://"
+ InetAddress.getByName(namenodeHost).getCanonicalHostName() + ":"
+ namenodeInfoPort + "/dfshealth.jsp\">Go back to DFS home</a>");
@@ -254,7 +254,7 @@ public class DatanodeJspHelper {
}
blockSize = Long.parseLong(blockSizeStr);
- final DFSClient dfs = getDFSClient(ugi, datanode.getNameNodeAddr(), conf);
+ final DFSClient dfs = getDFSClient(ugi, datanode.getNameNodeAddrForClient(), conf);
List<LocatedBlock> blocks = dfs.getNamenode().getBlockLocations(filename, 0,
Long.MAX_VALUE).getLocatedBlocks();
// Add the various links for looking at the file contents
@@ -311,7 +311,7 @@ public class DatanodeJspHelper {
// generate a table and dump the info
out.println("\n<table>");
- String namenodeHost = datanode.getNameNodeAddr().getHostName();
+ String namenodeHost = datanode.getNameNodeAddrForClient().getHostName();
String namenodeHostName = InetAddress.getByName(namenodeHost).getCanonicalHostName();
for (LocatedBlock cur : blocks) {
@@ -379,7 +379,7 @@ public class DatanodeJspHelper {
return;
}
- final DFSClient dfs = getDFSClient(ugi, datanode.getNameNodeAddr(), conf);
+ final DFSClient dfs = getDFSClient(ugi, datanode.getNameNodeAddrForClient(), conf);
Token<BlockTokenIdentifier> blockToken = BlockTokenSecretManager.DUMMY_TOKEN;
if (conf.getBoolean(
@@ -618,7 +618,7 @@ public class DatanodeJspHelper {
+ "\">");
// fetch the block from the datanode that has the last block for this file
- final DFSClient dfs = getDFSClient(ugi, datanode.getNameNodeAddr(), conf);
+ final DFSClient dfs = getDFSClient(ugi, datanode.getNameNodeAddrForClient(), conf);
List<LocatedBlock> blocks = dfs.getNamenode().getBlockLocations(filename, 0,
Long.MAX_VALUE).getLocatedBlocks();
if (blocks == null || blocks.size() == 0) {
Modified: hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/namenode/StreamFile.java
URL: http://svn.apache.org/viewvc/hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/namenode/StreamFile.java?rev=996012&r1=996011&r2=996012&view=diff
==============================================================================
--- hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/namenode/StreamFile.java (original)
+++ hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/namenode/StreamFile.java Fri Sep 10 22:41:42 2010
@@ -50,7 +50,7 @@ public class StreamFile extends DfsServl
static DataNode datanode = null;
static {
if ((datanode = DataNode.getDataNode()) != null) {
- nameNodeAddr = datanode.getNameNodeAddr();
+ nameNodeAddr = datanode.getNameNodeAddrForClient();
}
}