Bo Cui created HBASE-24395:
------------------------------

             Summary: ServerName#getHostname() is case sensitive
                 Key: HBASE-24395
                 URL: https://issues.apache.org/jira/browse/HBASE-24395
             Project: HBase
          Issue Type: Bug
          Components: Balancer
    Affects Versions: 2.2.3, 1.3.1
            Reporter: Bo Cui
         Attachments: image-2020-05-18-17-42-57-119.png

ServerName calss,the getServerName(String hostName, int port, long 
startcode),equals and compareTo are case insensitive, but getHostname() is case 
sensitive.
if hostName is HOSTNAME1, ServerName is hostname1,11111,1589615319931, and 
getHostname() returns HOSTNAME1.

and then BaseLoadBalancer#retainAssignment() uses ServerName#getHostname(), all 
keys of serversByHostname are 
upperCase(HOSTNAME1,HOSTNAME2,HOSTNAME3,HOSTNAME4...) from 
ServerManager#createDestinationServersList, but oldServerName.getHostname() is 
lowerCase(hostname1,hostname2,hostname3...) from walLog dir.

!image-2020-05-18-17-42-57-119.png!

and finally...all region of old ServerName will be assigned to random hosts



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to