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)