You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by li...@apache.org on 2013/03/21 19:53:00 UTC

svn commit: r1459458 - in /hbase/branches/0.89-fb/src: main/java/org/apache/hadoop/hbase/HServerAddress.java test/java/org/apache/hadoop/hbase/TestHServerInfo.java

Author: liyin
Date: Thu Mar 21 18:53:00 2013
New Revision: 1459458

URL: http://svn.apache.org/r1459458
Log:
[HBASE-7737] Normalizes stringValue for HServerAddress

Author: rshroff

Summary: Always sets the stringValue to host_ip_addr:port.

Test Plan:
Added a small unit test.
MR:
http://hbaseproxy001.prn1.facebook.com/mr_jt/hbasebackup003-ash3/jobdetails.jsp?jobid=job_201209211223_47720&refresh=30

Reviewers: liyintang

Reviewed By: liyintang

CC: hbase-eng@

Differential Revision: https://phabricator.fb.com/D695632

Task ID: 2068631

Modified:
    hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/HServerAddress.java
    hbase/branches/0.89-fb/src/test/java/org/apache/hadoop/hbase/TestHServerInfo.java

Modified: hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/HServerAddress.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/HServerAddress.java?rev=1459458&r1=1459457&r2=1459458&view=diff
==============================================================================
--- hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/HServerAddress.java (original)
+++ hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/HServerAddress.java Thu Mar 21 18:53:00 2013
@@ -97,7 +97,7 @@ public class HServerAddress implements W
    */
   public HServerAddress(String bindAddress, int port) {
     this.address = new InetSocketAddress(bindAddress, port);
-    this.stringValue = bindAddress + ":" + port;
+    this.stringValue = getHostAddressWithPort();
     checkBindAddressCanBeResolved();
   }
 
@@ -212,7 +212,7 @@ public class HServerAddress implements W
       stringValue = null;
     } else {
       address = new InetSocketAddress(bindAddress, port);
-      stringValue = bindAddress + ":" + port;
+      stringValue = getHostAddressWithPort();
       checkBindAddressCanBeResolved();
     }
   }

Modified: hbase/branches/0.89-fb/src/test/java/org/apache/hadoop/hbase/TestHServerInfo.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.89-fb/src/test/java/org/apache/hadoop/hbase/TestHServerInfo.java?rev=1459458&r1=1459457&r2=1459458&view=diff
==============================================================================
--- hbase/branches/0.89-fb/src/test/java/org/apache/hadoop/hbase/TestHServerInfo.java (original)
+++ hbase/branches/0.89-fb/src/test/java/org/apache/hadoop/hbase/TestHServerInfo.java Thu Mar 21 18:53:00 2013
@@ -22,6 +22,11 @@ import static org.junit.Assert.assertFal
 import static org.junit.Assert.assertNotSame;
 import static org.junit.Assert.assertTrue;
 
+import java.io.DataInputStream;
+import java.io.DataOutputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
 import java.io.IOException;
 
 import org.apache.hadoop.hbase.util.Writables;
@@ -99,6 +104,40 @@ public class TestHServerInfo {
   }
 
   @Test
+  public void testHostNameToString() throws IOException {
+
+    // Constructor test
+    HServerAddress hsa1 = new HServerAddress("localhost", 1234);
+    assertTrue(hsa1.toString().equals("127.0.0.1:1234"));
+
+    // Writable
+    File tempFile = new File("test.out");
+    tempFile.createNewFile();
+    assertTrue(tempFile.exists());
+
+    FileOutputStream fos = new FileOutputStream("test.out");
+
+    DataOutputStream dos = new DataOutputStream(fos);
+    dos.writeUTF("localhost");
+    dos.writeInt(1234);
+    dos.flush();
+    dos.close();
+
+    FileInputStream fis = new FileInputStream("test.out");
+    DataInputStream dis = new DataInputStream(fis);
+
+    HServerAddress hsa2 = new HServerAddress();
+    hsa2.readFields(dis);
+
+    assertTrue(hsa2.toString().equals("127.0.0.1:1234"));
+    dis.close();
+
+    assertTrue(tempFile.delete());
+
+   }
+
+
+  @Test
   public void testFromServerName() {
     String host = "127.0.0.1";
     int port = 60020;