You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by mb...@apache.org on 2015/07/01 18:43:42 UTC
[2/6] hbase git commit: HBASE-13995 ServerName is not fully case
insensitive
HBASE-13995 ServerName is not fully case insensitive
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/012b1d42
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/012b1d42
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/012b1d42
Branch: refs/heads/branch-1.2
Commit: 012b1d426e1c4a84e5932cb8fbdcc8bfc32f6e63
Parents: eeb864a
Author: Matteo Bertozzi <ma...@cloudera.com>
Authored: Wed Jul 1 09:20:25 2015 -0700
Committer: Matteo Bertozzi <ma...@cloudera.com>
Committed: Wed Jul 1 09:28:36 2015 -0700
----------------------------------------------------------------------
.../main/java/org/apache/hadoop/hbase/ServerName.java | 4 ++--
.../java/org/apache/hadoop/hbase/TestServerName.java | 11 +++++++++++
2 files changed, 13 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/012b1d42/hbase-client/src/main/java/org/apache/hadoop/hbase/ServerName.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/ServerName.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/ServerName.java
index ef7ff0d..5ccdd35 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/ServerName.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/ServerName.java
@@ -229,7 +229,7 @@ public class ServerName implements Comparable<ServerName>, Serializable {
*/
static String getServerName(String hostName, int port, long startcode) {
final StringBuilder name = new StringBuilder(hostName.length() + 1 + 5 + 1 + 13);
- name.append(hostName);
+ name.append(hostName.toLowerCase());
name.append(SERVERNAME_SEPARATOR);
name.append(port);
name.append(SERVERNAME_SEPARATOR);
@@ -314,7 +314,7 @@ public class ServerName implements Comparable<ServerName>, Serializable {
final ServerName right) {
if (left == null) return false;
if (right == null) return false;
- return left.getHostname().equals(right.getHostname()) &&
+ return left.getHostname().compareToIgnoreCase(right.getHostname()) == 0 &&
left.getPort() == right.getPort();
}
http://git-wip-us.apache.org/repos/asf/hbase/blob/012b1d42/hbase-server/src/test/java/org/apache/hadoop/hbase/TestServerName.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestServerName.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestServerName.java
index ec89f1c..2c90f34 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestServerName.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestServerName.java
@@ -107,5 +107,16 @@ public class TestServerName {
ServerName.getServerStartcodeFromServerName(sn.toString()));
}
+ @Test
+ public void testHostNameCaseSensitivity() {
+ ServerName lower = ServerName.valueOf("www.example.org", 1234, 5678);
+ ServerName upper = ServerName.valueOf("www.EXAMPLE.org", 1234, 5678);
+ assertEquals(0, lower.compareTo(upper));
+ assertEquals(0, upper.compareTo(lower));
+ assertEquals(lower.hashCode(), upper.hashCode());
+ assertTrue(lower.equals(upper));
+ assertTrue(upper.equals(lower));
+ assertTrue(ServerName.isSameHostnameAndPort(lower, upper));
+ }
}