ソースを参照

HADOOP-1790. Fix tasktracker to work correctly on multi-homed boxes. Contributed by Torsten Curdt.

git-svn-id: https://svn.apache.org/repos/asf/lucene/hadoop/trunk@570559 13f79535-47bb-0310-9956-ffa450edef68
Doug Cutting 18 年 前
コミット
9137b8b4fe
2 ファイル変更7 行追加5 行削除
  1. 3 0
      CHANGES.txt
  2. 4 5
      src/java/org/apache/hadoop/mapred/TaskTracker.java

+ 3 - 0
CHANGES.txt

@@ -113,6 +113,9 @@ Release 0.14.1 - (unreleased)
     HADOOP-1740.  Fix null pointer exception in sorting map outputs. (Devaraj
     Das via omalley)
 
+    HADOOP-1790.  Fix tasktracker to work correctly on multi-homed
+    boxes.  (Torsten Curdt via cutting)
+
 
 Release 0.14.0 - 2007-08-17
 

+ 4 - 5
src/java/org/apache/hadoop/mapred/TaskTracker.java

@@ -17,13 +17,9 @@
  */
  package org.apache.hadoop.mapred;
 
-import java.io.BufferedInputStream;
-import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.File;
-import java.io.FilterOutputStream;
 import java.io.IOException;
-import java.io.InputStream;
 import java.io.OutputStream;
 import java.io.PrintStream;
 import java.net.BindException;
@@ -1771,13 +1767,16 @@ public class TaskTracker
 
       JobConf defaultConf = new JobConf();
       int port = Integer.parseInt(args[0]);
+      InetSocketAddress address = new InetSocketAddress
+        (defaultConf.get("mapred.task.tracker.report.bindAddress","0.0.0.0"),
+         port);
       String taskid = args[1];
       //set a very high idle timeout so that the connection is never closed
       defaultConf.setInt("ipc.client.connection.maxidletime", 60*60*1000);
       TaskUmbilicalProtocol umbilical =
         (TaskUmbilicalProtocol)RPC.getProxy(TaskUmbilicalProtocol.class,
                                             TaskUmbilicalProtocol.versionID,
-                                            new InetSocketAddress(port), 
+                                            address,
                                             defaultConf);
             
       Task task = umbilical.getTask(taskid);