hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matteo Bertozzi (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HBASE-13995) ServerName is not fully case insensitive
Date Tue, 30 Jun 2015 01:26:04 GMT
Matteo Bertozzi created HBASE-13995:
---------------------------------------

             Summary: ServerName is not fully case insensitive
                 Key: HBASE-13995
                 URL: https://issues.apache.org/jira/browse/HBASE-13995
             Project: HBase
          Issue Type: Bug
          Components: Region Assignment
    Affects Versions: 1.1.0.1, 1.0.1.1, 0.98.12.1, 2.0.0, 1.2.0
            Reporter: Matteo Bertozzi
            Assignee: Matteo Bertozzi
             Fix For: 2.0.0, 0.98.14, 1.0.2, 1.2.0, 1.1.1


we ended up with two ServerName with different cases, AAA and aaa.
Trying to create a table, every once in a while, we ended up with the region lost and not
assigned. 
BaseLoadBalancer.roundRobinAssignment() goes through each server and create a map with what
to assign to them.
We had to server on the list AAA and aaa which are the same machine, the problem is that the
round robin now is assigning an empty list to one of the two. so depending on the order we
ended up with a region not assigned.

ServerName equals() does the case insensitive comparison but the hashCode() is done on a case
sensitive server name, so the Map in ServerManager will never hit the item and compare it
using equals, so we end up with two entries that are the same server. similar thing for ServerName.isSameHostnameAndPort()
where we don't check for cases



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message